2017-10-30 12 views
0

Acrobat DCのフォームで作業し、前のフィールド(first_table)が空の場合は、1つのフィールド(addtl_tables)に入力を制限する必要があります。つまり、first_tableフィールドがまだ記入されていない場合、フォームでaddtl_tablesフィールドのエントリとそれ以上の計算を許可しないようにします。ここでAcrobat pdfカスタムフィールドの有効な入力が有効でない

は、私がaddtl_tablesフィールド上の検証のために使用しているコードです:私はこれをテストする場合

if (this.getField('first_table') != 1) { 
event.value = ''; 
} 

addtl_tablesフィールドがfirst_tableに有効なデータが含まれている場合でも、すべての任意の入力を受け付けることはありません。

これはかなりシンプルなはずですが、私は何が欠けていますか?

答えて

0

スクリプトにはいくつか問題があります。

まず...

this.getField('first_table') 

...唯一のフィールドオブジェクトを取得し、それが価値だありません。使用...

var fieldValue = this.getField('first_table').value 

...フィールドの名前を使用して値を取得する。

第2に、フィールド検証スクリプトは、event.rcプロパティの値を調べて、入力された値が有効かどうかを判断します。コードでこの値を設定する必要があります。真は有効であることを意味する。

しかし、説明する目標を達成するために、検証スクリプトはコードを実行する場所ではなく、検証スクリプトはコミットされた値に対して実行されます。あなたは入力を防止したい。 'first_table'が空のときに入力を防ぐために、 "addtl_tables"というキーボードスクリプトのカスタムフォーマットイベントにいくつかのコードを追加します。何かのように...

if (this.getField('first_table').value == '') { 
    event.change = ''; 
} 

...が動作します。

関連する問題