JS 正则表达式:如 <input type="text" onkeyup="this.value=this.value.replace(/\D/g,'')" >

如上是控制输入框只能是数字。我想要控制输入框只能是6位数字?怎么做。

onkeyup只能检测1个字符,这里只能控制用户输入的单个字符是数字
建议加个onblur事件,在文本框失去焦点的时候验证是否为6位数字
正则是 /\d{6}/g
不过如果你只让用户输入数字的话,不妨用下面的代码
<input type="text" onkeypress="if(window.event.keyCode < 48 || window.event.keyCode >57){window.event.keyCode = 0;window.event.returnValue = false;}" maxlength="6" >
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-12-10
<input type="text" onchange="(function(x){ if(!(/^\d{6}$/).test(x)){alert('请输入6位数字');} })(this.value)" />
第2个回答  2010-12-10
<input type="text" onkeyup="this.value=this.value.replace(/\D/g,'')" maxlength="6">
相似回答