为什么我的isNaN无法正常工作?

时间:2013-11-30 21:46:39

标签: javascript

if (isNaN(telenum)){
        error = true;
        document.getElementById('telenum').style.background = 'red';
        document.getElementById("feedback").innerHTML = "<span style='color:red;'> Only Enter numbers!</span>";

}else if (telenum < 11){
        error = true;
        document.getElementById('telenum').style.background = 'red';
        document.getElementById("feedback").innerHTML = "<span style='color:red;'> Enter a valid number!</span>";

}else{
        document.getElementById('telenum').style.background = 'white';
}

当我通过输入一个11位数字进行测试时,它不起作用,它说:只输入数字!

任何人都知道我做错了什么?

1 个答案:

答案 0 :(得分:0)

你做错了的是如何设置 telenum 变量。

你应该张贴那段代码。

总之...

如果你有一个像

这样的输入字段
<input type="text" name="telenum" id="telenum" />

在字段中获取值的正确方法是

telenum = document.getElementById("telenum").value;

请注意,如果telenum是用于评估isNaN的字符串,则无关紧要。

试试

isNaN("123");

在浏览器的控制台上。它返回 false

“123”是一个字符串,但是一个数字。所以isNaN返回false