0

JQueryを使用して2つのテキストフィールドの値を確認しようとしています。ドルの金額を比較して、新しく入力した値が元の金額よりも大きいかどうかを確認する必要があります。結果は私が期待しているものではありません。最初の値はPHPOrigAMTValを介して事前に入力され、2番目の値amtTOrefundValはユーザーが入力します。コードは次のとおりです。

$('#doREFUND').on("click", function() {
    var amtTOrefundVal = $('.amtTOrefund').val();
    var OrigAMTVal     = $('.CustomerOrderTotal').val();

    var doamtTOrefund  = parseInt(amtTOrefundVal).toFixed(2);
    var doOrigAMT      = parseInt(OrigAMTVal).toFixed(2);

    if( doamtTOrefund > doOrigAMT ) {    
        var balance = OrigAMTVal - doamtTOrefund;
        alert("BAD: $" + balance + " Over Limit");
    } else {
        var balance = OrigAMTVal - doamtTOrefund;
        alert("GOOD: $" + balance + " Left to Go");
    }
});

これがフィドルです:http: //jsfiddle.net/dM2Fr/2/

私は何かが足りないことを知っていますが、それを理解することはできません。

4

1 に答える 1

4

toFixed文字列を返します。それなしで値を比較するだけです。

問題は、文字列を比較していて、それ"174 > "1000"が正しいことです。

PS を使用する必要がありますparseInt(value, 10)

于 2012-08-14T18:52:18.387 に答える