js限制input文本框输入的方法详解

发布时间:2019-08-28编辑:脚本学堂
本文介绍下,使用js限制input文本框中内容输入的一些例子,有需要的朋友参考下吧。

其一,只允许输入数字和小数点。
 

复制代码 代码示例:
<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这句是比较实用的,意为关闭输入法
效果最好的是3,可以直接禁止输入,4是输入以后又替换,如果按回车的话,会有不可预估的结果。

附,js限制文本框输入的一些例子。
1,只允许输入数字
 

复制代码 代码示例:
<input name="username" type="text" onkeyup="value=this.value.replace(/D+/g,'''')">

2,只允许输入英文字母、数字和下划线(以下二种方法实现)
 

复制代码 代码示例:
<input name="username" type="text" style="ime-mode:disabled">
<input name="username" type="text" onkeyup="value=value.replace(/[^w./]/ig,'''')">

3,只允许输入英文字母、数字和&=@
 

复制代码 代码示例:
<input name="username" type="text" onkeyup="value=value.replace(/[^w=@&]|_/ig,'''')">

4,只允许输入汉字
 

复制代码 代码示例:
<input name="username" type="text" onkeyup="value=value.replace(/[^u4E00-u9FA5]/g,'''')">