這篇文章主要介紹了Javascript實現禁止輸入中文或英文的方法實例,本文方法都是使用正則表達式實現。在Chrome運行正常,如果是IE浏覽器還需修改。一些例子只供參考,實際應用需改進。
禁止輸入英文:
代碼如下:
<input type="text" onkeypress="return event.keyCode>=48&&event.keyCode<=57||(this.value.indexOf('.')<0?event.keyCode==46:false)" onpaste="return !clipboardData.getData('text').match(/\D/)" ondragenter="return false">
體驗效果:
用正則表達式限制只能輸入中文:
代碼如下:
<input type="text" onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,''))" />
體驗效果:
1.用正則表達式限制只能輸入全角字符:
代碼如下:
<input type="text" onkeyup="value=value.replace(/[^\uFF00-\uFFFF]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\uFF00-\uFFFF]/g,''))" />
體驗效果:
2.用正則表達式限制只能輸入數字:
代碼如下:
<input type="text" onkeyup="value=value.replace(/[^\d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))" />
體驗效果:
3.用正則表達式限制只能輸入數字和英文:
代碼如下:
<input type="text" onkeyup="value=value.replace(/[\W]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))" />
體驗效果: