js控制文本框禁止輸入特殊字符詳解
在開發(fā)難免遇到一些前端需要驗(yàn)證輸入的數(shù)據(jù)是否合法的問題,收集分享在這里同學(xué)們使用,歡迎補(bǔ)充。
1.標(biāo)簽上直接替換方法:
JS 控制不能輸入特殊字符
<input type="text"class="domain"onkeyup="this.value=this.value.replace(/[^u4e00-u9fa5w]/g,'')"; this.value=this.value.replace(/[^u4e00-u9fa5w]/g,'')
JS 控制文本框只能輸入數(shù)字
<input onkeyup="value=value.replace(/[^0-9]/g,'')" onpaste="value=value.replace(/[^0-9]/g,'')" oncontextmenu = "value=value.replace(/[^0-9]/g,'')">
JS 控制文本框只能輸入數(shù)字、小數(shù)點(diǎn)
<input onkeyup="value=value.replace(/[^\0-9\.]/g,'')" onpaste="value=value.replace(/[^\0-9\.]/g,'')" oncontextmenu = "value=value.replace(/[^\0-9\.]/g,'')">
JS 控制文本框只能輸入英文
<input onkeyup="value=value.replace(/[^\a-\z\A-\Z]/g,'')" onpaste="value=value.replace(/[^\a-\z\A-\Z]/g,'')" oncontextmenu = "value=value.replace(/[^\a-\z\A-\Z]/g,'')">
JS 控制文本框只能輸入英文、數(shù)字
<input onkeyup="value=value.replace(/[^\a-\z\A-\Z0-9]/g,'')" onpaste="value=value.replace(/[^\a-\z\A-\Z0-9]/g,'')" oncontextmenu = "value=value.replace(/[^\a-\z\A-\Z0-9]/g,'')">
JS 控制文本框只能輸入中文
<input onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')" onpaste="value=value.replace(/[^\u4E00-\u9FA5]/g,'')" oncontextmenu = "value=value.replace(/[^\u4E00-\u9FA5]/g,'')">
JS 控制文本框只能輸入中文、英文、數(shù)字
<input onkeyup="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5]/g,'')" onpaste="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5]/g,'')" oncontextmenu = "value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5]/g,'')">
JS 控制文本框只能輸入中文、英文、數(shù)字、空格
<input onkeyup="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5\ ]/g,'')" onpaste="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5\ ]/g,'')" oncontextmenu = "value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5\ ]/g,'')">
JS 控制文本框只能輸入中文、英文、數(shù)字、小數(shù)點(diǎn)
<input onkeyup="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5\.]/g,'')" onpaste="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5\.]/g,'')" oncontextmenu = "value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5\.]/g,'')">
2.輸入之后立即清除:
//驗(yàn)證輸入框內(nèi)不能輸入特殊字符,輸入就立刻清除 function cleanSpelChar(th){ if(/["'<>%;)(&+]/.test(th.value)){ $(th).val(th.value.replace(/["'<>%;)(&+]/,"")); } }
3.如果是特殊字符,禁止輸入:
//驗(yàn)證輸入框內(nèi)不能輸入特殊字符,輸入前先作判斷 function processSpelChar(){ var code; var character; if(document.all){ code = window.event.keyCode; }else{ code = arguments.callee.caller.arguments[0].which; } var character = String.fromCharCode(code); var txt = new RegExp(/["'<>%;)(&+]/); if(txt.test(character)){ if(document.all){ window.event.returnValue = false; }else{ arguments.callee.caller.arguments[0].preventDefault(); } } }
以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,同時(shí)也希望多多支持腳本之家!
相關(guān)文章
js實(shí)現(xiàn)拾色器插件(ColorPicker)
這篇文章主要為大家詳細(xì)介紹了js實(shí)現(xiàn)拾色器插件ColorPicker,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-05-05JavaScript記錄光標(biāo)在編輯器中位置的實(shí)現(xiàn)方法
這篇文章主要介紹了JavaScript記錄光標(biāo)在編輯器中位置的實(shí)現(xiàn)方法,涉及JavaScript鼠標(biāo)事件結(jié)合頁面元素的操作技巧,需要的朋友可以參考下2016-04-04基于Bootstrap實(shí)現(xiàn)圖片輪播效果
這篇文章主要為大家詳細(xì)介紹了基于bootstrap實(shí)現(xiàn)圖片輪播效果的相關(guān)資料,具有一定的參考價(jià)值,感興趣的朋友可以參考一下2016-05-05