如何修改JavaScript,使其不允许在字段中使用字母?

如何修改JavaScript,使其不允许在字段中使用字母?,javascript,numbers,Javascript,Numbers,目前我正在使用isNAN,但似乎无法使其正常工作 if(isNAN(getElementById(“Bob”))试试这个: if (isNaN(document.getElementById("Bob").value)) 您没有在代码中使用正确的语法来获取值。还要确保您使用的是isNaN(),而不是isNaN() 如果还要检查空值值: var myVar = document.getElementById("Bob").value; if(!myVar || isNaN(myVar))

目前我正在使用isNAN,但似乎无法使其正常工作

if(isNAN(getElementById(“Bob”))
试试这个:

if (isNaN(document.getElementById("Bob").value))
您没有在代码中使用正确的语法来获取值。还要确保您使用的是
isNaN()
,而不是
isNaN()

如果还要检查
空值
值:

var myVar = document.getElementById("Bob").value;
if(!myVar || isNaN(myVar))
    alert("Not a number!");
else
    alert("Is a number!");

您可以使用与此函数类似的内容来检查inp中是否包含字母

function checkLetter(inp)  
{  
   var letters = /^[A-Za-z]+$/;  
   if(inp.value.match(letters)){  
      //Letters 
   }  
   else {  
      //no letter
   }  
}  

您必须检查值,而不是对象

if (isNAN(getElementById("Bob").val()) ){
 //
}
编辑,以便如果您只想锁定包含数值的字段,可以在html5中执行此操作:

<input type="number" />

这里有一种方法可以检查是否只存在数字而不存在字母

function isNumber(n) {
  return !isNaN(parseFloat(n)) && isFinite(n);
}
因此,其用途如下所示

nn=document.getElementById("Bob").value;

ans=isNumber(nn);

if(ans)
{
    //only numbers
}
这是从这里发现的


请验证空值的答案。@ch.smrutiranjanparida请查看更新的代码,感谢您指出。
isNaN
应采用正确的格式。请更新它。
.val()
不能与普通JS一起使用-你把它与jQuery(或其他库/框架)混在一起了。