当试图确定一个值是否大于另一个值时,我遇到了奇怪的JavaScript/jQuery数学错误。“大于”比较文本输入值的意外结果
这里是一个链接,使用的jsfiddle,我的代码:http://jsfiddle.net/qxeTj/
$("#Quantity").live("focusout", function() {
var qty = +$(this).val();
var stock = +$('#StockLvl').val();
if (qty > stock) {
$('#Result').html("<p>Quantity: " + qty + "</p><p>Stock: " + stock + "</p>" + "<p>Not Enough Stock.</p>");
}
else if (stock > qty || stock == qty) {
$('#Result').html("<p>Quantity: " + qty + "</p><p>Stock: " + stock + "</p>" + "<p>Enough Stock.</p>");
}
});
的问题实施例:
当我集中出input
字段的,如果它具有的1
或2
的值,它工作正常。它甚至可以工作,如果我的值为3, 4, 5, 6, 7, 8, 9
。
但问题是当我使用10-19
或100-199
或1000-1999
等等的值。它说它有足够的股票,当它不应该。
仅供参考,而非stock> qty ||股票== qty',只是'stock> = qty'。 – RightSaidFred
http://jsfiddle.net/bondythegreat/E4PaD/ – bondythegreat