JS只能輸入數字,數字和字母等的正則表達式

jopen 12年前發布 | 33K 次閱讀 JS JavaScript開發
其一,只允許輸入數字和小數點。
<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,'')">

只允許輸入英文字母、數字和下劃線(以下二種方法實現)
<input name="userna其一,只允許輸入數字和小數點。
<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,'')">

只允許輸入英文字母、數字和下劃線(以下二種方法實現)
<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,'')">
me" 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,'')">
 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!