js如何验证用户输入的只能是数字?

<input type='text' name='test' id='test'/>
<script type='text/javascript'>
</script>
请写个验证用户输入的字符,提示用户输入数字。
请测试成功后给出具体的正则代码。

如果判断输入的是否是数字,如果不是数字弹出一个提示:简易代码如下:
<body>
<input type="text" id="inp"></table>
</body>
<script>
var oInp = document.getElementById('inp');
oInp.onblur=function(){
if(isNaN(Number(oInp.value))){  //当输入不是数字的时候,Number后返回的值是NaN;然后用isNaN判断。
alert('不是数字!')
}
}
</script>
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-09-20
function check_validate1(value){
    //定义正则表达式部分
    var reg = /^\d+$/;
    if( value.constructor === String ){
        var re = value.match( reg );
        return true;
    }
    return false;
}

纯数字

本回答被提问者采纳
第2个回答  2014-09-20
亲,用正则表达式判断一下就可以了追问

请测试成功后给出具体的正则代码。

追答

不用正则了,用其他的判断按键的keycode码

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
<title>Document</title>
</head>
<body>
<input type='text' name='test' id='test'/>
   <script type='text/javascript'>
       var oTest=document.getElementById('test');
       oTest.onkeydown=function(ev)
       {
          var oEvent=ev||event;
          if((oEvent.keyCode<48||oEvent.keyCode>57)&&oEvent.keyCode!=8&&oEvent.keyCode!=13)
          {
            alert('请输入数字!');
            return false;
          }
       }
   </script>
</body>
</html>

本回答被网友采纳
相似回答