Javascript逻辑运算符未验证

时间:2015-06-01 12:44:42

标签: javascript

简单的javascript逻辑运算符验证对我不起作用。

例如。目标价格不应高于原始价格

x = input from user;
y = 1000; // fixed

if(x > 1000 )
{
  alert ( x+'should not be greater than'+y);
}
else
{
  alert ( ' proceed' );
}

这是我的EXAMPLE

6 个答案:

答案 0 :(得分:0)

这些值的类型为string,您需要将它们转换为number。您可以使用Number()

    targetPrice = Number($('#pdiwap_dropamt').val());
    orginalPrice = Number($('#orgprice_wap').val());

答案 1 :(得分:0)

因为两个操作数字符串都是字符串比较。

您可以将值转换为数字,然后进行比较,如

    targetPrice = +$('#pdiwap_dropamt').val();
    orginalPrice = +$('#orgprice_wap').val();

答案 2 :(得分:0)

你正在编写两个字符串。使用类似这样的东西

 if (parseInt(targetPrice) > parseInt(orginalPrice))

答案 3 :(得分:0)

只需使用parseInt功能即可正确验证。因为html输入以字符串格式给出值。

if (parseInt(targetPrice,10) > parseInt(orginalPrice,10)) 

Updated Link

答案 4 :(得分:0)

我认为问题来自你所获得的输入,这被视为一个字符串。在比较之前尝试先转换为整数。

例如x = parseInt(来自用户的输入);

答案 5 :(得分:0)

是的!它的输入值是一个字符串,因此无法正确验证。

试试这个。

var x  = document.getElementById("input").value;
    var y  = 1000;
    if(!isNaN(x) && x < 1000) {
      alert ('proceed' );
    } else {
      alert(x+'should not be greater than'+y);
    }