我的javascript表现得很奇怪!
我的html文件中有一个输入字段.此输入字段由javascript以下列方式读取:
var bscore = $("#bscore").val();
Run Code Online (Sandbox Code Playgroud)
然后我想在输入低于某个输入时显示警告
if(bscore<"913"){
document.getElementById("bscorealert").style.display="block";
};
Run Code Online (Sandbox Code Playgroud)
这很好用.因此,当数字高于913时,它不应显示.只有javascript表现得很奇怪,当bscore输入字段中的数字高于999(因此1000和更高)时,if语句被触发并显示警报.
这怎么可能?
这是可能的,因为你正在比较字符串,而不是整数.字符串比较是词典,等等"9" > "10".
在Number(strValue)与一元运算符进行比较之前,您需要进行转换+:
var bscore = +$("#bscore").val(); // + prefix converts to number
if (bscore < 913) ... // no quotes around 913!
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
62 次 |
| 最近记录: |