闲着没事收集了几个利用 JS 脚本控制html input 元素输入内容类型的方法,各位有需要的可以拿走。都测试过了。

限制input输入内容类型的方法

1、input 只能输入数字

<input onkeyup="value=value.replace(/[^\d]/g,'') " onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))">

2、input只能输入数字,两位小数以及中文

<input type="text" onKeyPress="if((event.keyCode<48 || event.keyCode>57) && event.keyCode!=46 || /\.\d\d$/.test(value))event.returnValue=false">

3、input只能输入数字,英文字母以及小数点

<input onkeyup="value=value.replace(/[^\w\.\/]/ig,'')">

4、input只能输入数字,英文字母

<input type="text" onkeyup="value=value.replace(/[\W]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))" />

5、input只能输入数字,中文

<input type="text" onkeydown="if(event.keyCode==13)event.keyCode=9" onkeypress="if ((event.keyCode<48 || event.keyCode>57)) event.returnValue=false" />

6、input只能输入中文

<input type="text" onkeyup="value=value.replace(/[ -~]/g,'')" onkeydown="if(event.keyCode==13)event.keyCode=9" />

7、input禁止输入数字

<input onkeyup="value=value.replace(/[\d]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[\d]/g,''))" >