我不是javascript方面的专家,因此希望有人可以帮助我。
我有以下代码,但由于某种原因,它始终认为该语句是正确的
delvNum=document.getElementById("deliveryNum").value;
delvQTY=document.getElementById("delvQTY"+id).value;
orderQTY=document.getElementById("orderQTY"+id).value;
if (delvQTY>orderQTY)
{
alert("Can't deliver more than " + orderQTY + ", you are trying to deliver " + delvQTY + ". Please fix!");
document.getElementById("delvQTY"+id).focus();
return;
}
该错误消息确实显示了每个var的数量,并且已正确传递。
最佳答案
您正在比较字符串而不是数字。
使用parseInt或parseFloat
if (parseFloat(delvQTY)>parseFloat(orderQTY))
要么
if (parseInt(delvQTY,10)>parseInt(orderQTY,10))