0

新しいコスト (数量 * 価格) を反映するように数量を変更すると、このフィールド (注文コスト) が更新されるようにしようとしています。

<td class="result" align="right">$<Input type="text" maxLength="9" style="text-align:right; width:55px;" align="right" id="OC<%=i %>" value="<%=formatnumber(rstBevInventory("avg_unit_cost"),2)*proposed %>"/></td>

元の合計を計算しますが、数量を変更すると、次の Javascript 関数が呼び出されます。

function reCalcOrder(i){
    document.getElementById("OC"+i).value = document.getElementById("P"+i).value * document.getElementById("Q"+i).value;
    cost = document.getElementById("OC"+i).value;
    Math.round(cost * 100) / 100;
    document.getElementById("OC"+i).set("value", "cost");
        if (document.getElementById("Q"+i).value < 0){
            document.getElementById("Q"+i).value = 0;
        }
}

桁数が多すぎます。これは、Javascript が乗算を処理する方法が原因のようです。Qty フィールドが変更されたときに ASP を反応させる方法はありますか? ASP は問題なく計算を行うように見えるためです。

お早めにどうぞ!

4

1 に答える 1

1

はい、Ajax を使用しています。ただし、次の行を変更すると問題が解決する場合もあると思います。

Math.round(cost * 100) / 100;

cost = Math.round(cost * 100) / 100;

別のオプションは次を使用していNumber.prototype.toFixedます:

cost = cost.toFixed(2);
于 2012-12-07T17:10:29.573 に答える