Javascript 为什么我的isNaN不工作? if(isNaN(telenum)){ 错误=真; document.getElementById('telenum').style.background='red'; document.getElementById(“反馈”).innerHTML=“仅输入数字!”; }else if(telenum

Javascript 为什么我的isNaN不工作? if(isNaN(telenum)){ 错误=真; document.getElementById('telenum').style.background='red'; document.getElementById(“反馈”).innerHTML=“仅输入数字!”; }else if(telenum,javascript,Javascript,当我通过输入一个11位数字来测试它时,它不起作用,它说:只输入数字 有人知道我做错了什么吗?你做错的是如何设置telenum变量 你应该发布那段代码 无论如何 如果您有一个输入字段,如 if (isNaN(telenum)){ error = true; document.getElementById('telenum').style.background = 'red'; document.getElementById("feedback").i

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


有人知道我做错了什么吗?

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

你应该发布那段代码

无论如何

如果您有一个输入字段,如

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';
}

请注意,telenum是否是用于使用isNaN求值的字符串并不重要

试试看

telenum = document.getElementById("telenum").value;
在浏览器的控制台上。它返回false


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

也许是
telenum
字符串?它是在评估“11”而不是“11”?你能谈谈你怎么称呼这个吗?请告诉我们你输入的号码,以及你输入的代码。
telenum
的数据类型是什么?就像carpeliam怀疑的那样,你可能需要一个parseInt。也许吧?
telenum = document.getElementById("telenum").value;
isNaN("123");