JavaScriptでフォームをデザインし、ユーザー入力をJavaScriptで検証していますが、計画どおりに動作していないようです。下記の私のサンプルコードをご覧ください。Adobe PDFフォーム用JavaScript:条件に応じたラベルの表示と非表示
var selection1 = this.getField("textfield1").value;
var selection2= this.getField("textfield2").value;
if (selection1 == "Please select" && selection2 == "Please select")
{
getField("Label1").display=display.hidden;
getField("Label2").display=display.hidden;
getField("Label3").display=display.hidden;
}
else if (selection1 == "Please select" && selection2 == "oranges")
{
getField("Label1").display=display.hidden;
getField("Label2").display=display.hidden;
getField("Label3").display=display.hidden;
}
else if ((selection2 == "oranges") && (selection1 == "two" || "four" || "six" || "eight”))
{
getField("Label1").display=display.hidden;
getField("Label2").display=display.visible;
getField("Label3").display=display.visible;
}
else if ((selection2 == "oranges") && (selection1 == "three" || "five" || "seven" || "nine"))
{
getField("Label1").display=display.visible;
getField("Label2").display=display.hidden;
getField("Label3").display=display.hidden;
}
あなたがコード上から見ることができるように、特定のラベルには、複数のドロップダウンリストから、ユーザの選択に応じて、隠されたと見えるようになります。
私の第一の問題は、ユーザーが例えば"four"
選択した場合、||
のみ最初の条件は、すなわち"two"
動作し、他のすべてが無視され、複数のを持っているコードselection1 ==
の一部には、何も起こりません。
私の2番目の問題は、ユーザーが次の組み合わせを選択したときselection1 = "Please select" & selection2 = "oranges"
何らかの理由でLabel1
と表示されます。
私の第三の問題、例えば、ユーザは、ユーザが変更した場合Label1
が正しく、しかし、選択にはLabel1
はまだ表示されているとLabel2 & Label3
はまだ隠されているいくつかの理由で、selection1 = "two"
、言うことができます表示さselection2 = "oranges" & selection1 = "three"
を選択した場合。
上記のコードは、隠しテキストボックスの計算(Printscreen 1)セクションに貼り付けられていますが、ドロップダウンリスト(Printscreen 2)自体の検証セクションに貼り付けてみましたが、何も動作していないようです。私もスイッチ文を使用しようとしましたが、私のselection1
には複数の条件があるため、動作していないようです。私のselection1
は40 ||
の領域にあり、全体的に私は25-30の異なるシナリオの領域にあります。
お手数をおかけしますようお願い申し上げます。
PrintScreenを1
PrintScreenを2
こんにちはマックス、私のためにこの問題を解決していただきありがとうございます、おそらく私の他の問題を解決することができるだろう、私はここに別の質問を掲載しました:[リンク](http://stackoverflow.com/questions/37634581/adobe- pdf-javascript-for-forms-grouping-conditions-from-if-else-statement) – o0Lucky0o