代码改变世界

javascript正则表达式控制input只能输入数字

2014-10-09 19:46  youxin  阅读(3251)  评论(0编辑  收藏  举报

 不能输入中文
 <input type="text" name="textfield"  onkeyup="this.value=this.value.replace(/[^/da-z_]/ig,'');"/>
只能输入 数字和下划线
<input onkeypress="return (/[/d_]/.test(String.fromCharCode(event.keyCode)))" style="ime-mode:Disabled" />
只能输入 数字和小数点
<input onkeypress="return (/[/d.]/.test(String.fromCharCode(event.keyCode)))" style="ime-mode:Disabled" />

 只允许输入汉字</br>
<input name="username" type="text" onkeyup="value=value.replace(/[^/u4E00-/u9FA5]/g,'')">


其一,只允许输入数字和小数点。
<input onKeypress="return (/[/d.]/.test(String.fromCharCode(event.keyCode)))" style="ime-mode:Disabled">

其二,判断的更详细一些,甚至22..2这样不算数字也判断得出来

<script>
function check(){
if (isNaN(tt.value))
{alert("非法字符!");
tt.value="";}
}
</script>
<input type="text" name="tt" onkeyup="check();">

其三,只允许输入整数。其实也完全可以根据第三条来举一反三做一些限制。

<script language=javascript>
function onlyNum()
{
if(!(event.keyCode==46)&&!(event.keyCode==8)&&!(event.keyCode==37)&&!(event.keyCode==39))
if(!((event.keyCode>=48&&event.keyCode<=57)||(event.keyCode>=96&&event.keyCode<=105)))
event.returnValue=false;
}
</script><input onkeydown="onlyNum();" style="ime-mode:Disabled>
结语,其实

style="ime-mode:Disabled
这句是比较实用的。意为关闭输入法。省得有些人开着全角输入数字,结果输入不进去来找你哭天抹泪的,还怪你设计的不好。

只允许输入数字
<input name="username" type="text" onkeyup="value=this.value.replace(//D+/g,'')">

value=value.replace(/[^\d\.]/g,'');

 

var sumValue
a=eval(www_zzjs_net_1.value);
b=eval(www_zzjs_net_2.value);
if (isNaN(a))
{a=0}
if (isNaN(b))
{b=0}很好记,zz站长,js就是js特效,本站收集大量高质量js代码,还有许多广告代码下载。
</script>
sumValue = a+b;et,
<input id="www_zzjs_net_1" type="text" size="20
self['www_zzjs_net_3'].value =sumValue;
}//欢迎来到站长特效网,我们的网址是www.zzjs.n" onkeyup="value=value.replace(/[^\d\.]/g,'');SumNum();">
<input id="www_zzjs_net_2" type="text" size="20" onkeyup="value=value.replace(/[^\d\.]/g,'');SumNum();">
<input id="www_zzjs_net_3" type="text" size="20">

 

只允许输入英文字母、数字和下划线(以下二种方法实现)
<input name="username" type="text" style="ime-mode:disabled">
<input name="username" type="text" onkeyup="value=value.replace(/[^/w/.//]/ig,'')">

只允许输入英文字母、数字和&=@
<input name="username" type="text" onkeyup="value=value.replace(/[^/w=@&]|_/ig,'')">

只允许输入汉字
<input name="username" type="text" onkeyup="value=value.replace(/[^/u4E00-/u9FA5]/g,'')">