js如何让文本框只能输入数字

时间:2022-05-09 20:22:56
用正则式 “^[\d]”能够实现在文本框中只能输入数字!
我写的函数为:
function onlynum(text)
{
    var myRegExp = /[\d]/;
    return (myRegExp.test(text));
}

比如:输入“123”,true!输入“abc”,false!输入“什么”,false!……但是!!!

重要的是但是!当输入“1a1”、“a11”、“11a”、“是1”或者“1是”的时候,都是true!

请问各位,用什么方法让input text只能输入纯数字的组合!不包含其他任何字符!

不胜感激!

10 个解决方案

#1


在input的onkeydown事件里把非数字的内容给替换为空

#2


<html>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    

    <body >  
    
<input type="text" onBlur="onlynum(this.value)" />

    <script>
        function onlynum(text)
{
    if(isNaN(+text)){
alert('不是纯数字')
}else{
alert('是纯数字')
}
}
    </script>
        
        
    </body>
</html>  

#3


 var myRegExp = /^[\d]*$/
这样试试

#4


引用 2 楼 mubeibei 的回复:
HTML code

<html>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    

    <body >  
    
    <input type="text" onBlur="onlynum(this.value)" />
        
    <scri……


十分感谢!能成功!我刚接触这块的开发!所以不是很懂!分给你了!

#5


引用 3 楼 lost_guy_in_scut 的回复:
var myRegExp = /^[\d]*$/
这样试试


这样我试过!不得行!但还是时分感谢!

#6


引用 1 楼 hztgcl1986 的回复:
在input的onkeydown事件里把非数字的内容给替换为空

这个方法可以!但是我想要的是onblur

#7


/^\d*$/

#8


引用 4 楼 bull_liu 的回复:
引用 2 楼 mubeibei 的回复:
HTML code

<html>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />


<body >

<input type="text" onBlur="onlynum(this.value)" />

<scri……


十分感谢……



不客气~·

#9


来个简单的
<input type="text" value="test"  onkeyup="value=value.replace(/[^\d]/g,'')">

#10


2楼 赞一个

#1


在input的onkeydown事件里把非数字的内容给替换为空

#2


<html>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    

    <body >  
    
<input type="text" onBlur="onlynum(this.value)" />

    <script>
        function onlynum(text)
{
    if(isNaN(+text)){
alert('不是纯数字')
}else{
alert('是纯数字')
}
}
    </script>
        
        
    </body>
</html>  

#3


 var myRegExp = /^[\d]*$/
这样试试

#4


引用 2 楼 mubeibei 的回复:
HTML code

<html>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    

    <body >  
    
    <input type="text" onBlur="onlynum(this.value)" />
        
    <scri……


十分感谢!能成功!我刚接触这块的开发!所以不是很懂!分给你了!

#5


引用 3 楼 lost_guy_in_scut 的回复:
var myRegExp = /^[\d]*$/
这样试试


这样我试过!不得行!但还是时分感谢!

#6


引用 1 楼 hztgcl1986 的回复:
在input的onkeydown事件里把非数字的内容给替换为空

这个方法可以!但是我想要的是onblur

#7


/^\d*$/

#8


引用 4 楼 bull_liu 的回复:
引用 2 楼 mubeibei 的回复:
HTML code

<html>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />


<body >

<input type="text" onBlur="onlynum(this.value)" />

<scri……


十分感谢……



不客气~·

#9


来个简单的
<input type="text" value="test"  onkeyup="value=value.replace(/[^\d]/g,'')">

#10


2楼 赞一个