1
    var spring = this.getField("Calibration_Spring_Value_low").value;
    if (event.value > (spring + .2) || event.value < spring - .2) {
        event.rc = false
        app.alert("Value is out of range");
        }

上記のスニペットは、Adobe Acrobat のデータ フォームのフィールド検証用です。書かれているとおりに実行すると、イベント値を Spring 値の +/- .2 と比較して正常に動作します。ただし、「スプリング」値に 19.9 の値を入力すると、フォームは 20.1 の値を拒否します。これは、これが失敗する唯一の値のセットのようです。

ステートメントをこれに変更することで、なんとかバンドエイドを貼ることができました

if (event.value >= (spring + .3) || event.value  < spring -.2) {

これがこのように実行される理由と、問題を正しく修正し、入力されたすべての値に対して正しく実行されることを確認する方法についての洞察はありますか?

4

1 に答える 1

0

ブラケットで試してみませんか?

if (event.value > (spring + .2) || event.value < (spring - .2)) {
于 2012-08-07T11:27:00.590 に答える