input 限制数字、汉字、字符,验证输入框内容

1.不能为空

<input onblur="if(this.value.replace(/^ +| +$/g,'')=='')alert('不能为空!')">

2.只能输入中文、英文、数字、@符号和.符号:
<input type="text"
onkeyup="value=value.replace(/[^a-zA-0-9u4E00-u9FA5@.]/g,'')">

3.禁止输入法输入:
<input type="text" style="ime-mode: disabled">

4.只能输入汉字:
<input onkeyup="value=value.replace(/[^u4E00-u9FA5]/g,'')"
onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^u4E00-u9FA5]/g,''))">

5.只能输入英文和数字:
<input onkeyup="value=value.replace(/[W]/g,'') "
onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^d]/g,''))">

6.只能输入数字,小数点,下划线:
<input name="price" type="text"
onkeyup="value=value.replace(/[^d._]/g,'')">

7.只能输入数字,小数点:
<input name="price" type="text"
onkeyup="value=value.replace(/[^d.]/g,'')">

8.只能输入数字:
<input onkeyup="this.value=this.value.replace(/D/g,'')"
onafterpaste="this.value=this.value.replace(/D/g,'')">

9.只能输入英文
<input type="text" onkeyup="value=value.replace(/[^a-zA-]/g,'')"
onkeydown="fncKeyStop(event)" onpaste="return false"
oncontextmenu="return false" />

10.只能输入英文
<input type="text" onkeyup="value=value.replace(/[^a-zA-Z]/g,'')">

11.

数字校验有个bug,希望大家这边注意一下,就是如果有input从后台获取的value值的话,上面的数字校验失效,下面贴出此情况下的处理方式

<input id="lastyearwage" name="lastyearwage" type="text" class="input-text" value="${acheck.lastyearwage }" onkeyup="this.value=this.value.replace(/D/g,'')" onafterpaste="this.value=this.value.replace(/D/g,'')"/>

function keyPress() { 
var keyCode = event.keyCode; 
if ((keyCode >= 48 && keyCode <= 57)) 

event.returnValue = true; 
} else { 
event.returnValue = false; 

}

原文地址:https://www.cnblogs.com/xinkun/p/10115681.html