誰でも私のコードで間違っていることを教えていただけますか?私は、ループを使って関数を作成しようとしています。ユーザの選択に応じて、PDF文書に目に見えるラベルを隠したり、見えるようにしたりしています。PDF JavaScript:ループを使用した関数
私の元のコード:ループと
if ((type == "sugar") && (countryofgrowth == "United State"))
{
getField("sugarlabel").display=display.visible;
getField("goodsugar").display=display.hidden;
getField("sugarQualitylevellow").display=display.hidden;
getField("sugarQualitylevelhigh").display=display.hidden;
getField("sugarQualitylevelhighmorethan75").display=display.hidden;
getField("sugarQualitylevelhighlessthan75").display=display.hidden;
getField("cornquantity").display=display.hidden;
getField("cornquantitymorethan500").display=display.hidden;
getField("cornquantitymax").display=display.hidden;
getField("cornquantitymaxyes").display=display.hidden;
getField("cornquantitymaxno").display=display.hidden;
}
else if ((type == "sugar") && (countryofgrowth == "United Kingdom"))
{
getField("sugarlabel").display=display.hidden;
getField("sugarquality").display=display.visible;
getField("sugarQualitylevellow").display=display.hidden;
getField("sugarQualitylevelhigh").display=display.hidden;
getField("sugarQualitylevelhighmorethan75").display=display.hidden;
getField("sugarQualitylevelhighlessthan75").display=display.hidden;
getField("cornquantity").display=display.hidden;
getField("cornquantitymorethan500").display=display.hidden;
getField("cornquantitymax").display=display.hidden;
getField("cornquantitymaxyes").display=display.hidden;
getField("cornquantitymaxno").display=display.hidden;
}
機能:'RangeError: Invalid argument value.
var setDisplay = function(display){
\t \t var fields = ["sugarlabel", "goodsugar", "sugarQualitylevellow" /*,...*/];
for(var i=0; i< fields.length; i++){
\t \t if(fields[i] == display) {
\t \t getField(fields[i]).display=display.visible;
} else {
\t \t getField(fields[i]).display=display.hidden;
}
}
}
if ((type == "sugar") && (countryofgrowth == "United State"))
{
setDisplay("sugarlabel")
}
私はエラーを取得しておきますよ
助けを借りてありがとうございます
ありがとう、thats私のエラーを解決しましたが、同じ段階で複数のラベルを表示できるようにする必要はないと思っていたので、完全には機能しません。また、上記のコードでは、 そのうちの。あなたが「スマート階層フィールドネーミング」についてあなたのアイデアを投稿してくれたら、それは私にはうまくいくかどうかを確認してください。 – o0Lucky0o
「スマート階層フィールドネーミング」...スマートは「よく考える」の略で、何もありませんソフトウェアなどと関係があります。 PDFの「階層フィールド命名」は、ピリオド「。」を使用してフィールド名をグループ化します。 「name.first」、「name.middle」、「name.last」などの区切り記号として使用します。特定のプロパティーでは、this.getField( "name")を使用してグループにアクセスし、たとえば、単一のコマンドでグループ全体を非表示にすることができます。 –
ありがとうございます。あなたは私の関数をどのように変更することができるので、複数の値を返すように提案することもできますか?つまり、 'setDisplay( "sugarlabel")'& 'setDisplay( "goodsugar")'を表示したいのですか? Currenltyは、表示するフィールドの数に関係なく、1つだけを返します。 – o0Lucky0o