我正在尝试使用JQuery检查两个文本字段中的值。我需要比较美元金额,看看新输入的值是否大于原始金额。结果根本不是我所期待的。第一个值通过 PHP 预先填充OrigAMTVal,第二个值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");
}
});
Run Code Online (Sandbox Code Playgroud)
这是一个小提琴: http: //jsfiddle.net/dM2Fr/2/
我知道我错过了一些东西,但我无法弄清楚。
toFixed返回一个字符串,只需比较没有该字符串的值。
问题是你正在比较字符串并且"174 > "1000"是真的。
PS 你应该使用parseInt(value, 10).