学习整理使用js判断input框只能输入数字、字母等正则表达式

不允许粘贴赋值

<input onpaste="return false;" type="text" name="textfield" value="">

所有从别的地方复制粘贴过来的数据都不可以被使用

JS判断只能是数字和小数点

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8"/>
    <title>input正则表达式</title>
</head>

<body>
<div>
    <form onsubmit="return chkIt(this)">
        <input name="phone">
        <input name="n2">
        <input name="smt" type="submit" value="提交">
    </form>
</div>

<script type="text/javascript">
    function chkIt(frm) {
        if (frm.phone.value.length > 0 && frm.phone.value.match(/[\x01-\xFF]*/) == false) {
            alert('phone不能输入中文!')
            frm.phone.focus();
            return false;
        }
    }
</script>
</body>
</html>

文本框只能输入数字代码(小数点也不能输入)

<input onkeyup="this.value=this.value.replace(/\D/g,'')" onafterpaste="this.value=this.value.replace(/\D/g,'')"> 

只能输入数字,能输小数点.

方法1

    <input onkeyup="if(isNaN(value))execCommand('undo')" onafterpaste="if(isNaN(value))execCommand('undo')">
    <input name=txt1 onchange="if(/\D/.test(this.value)){alert('只能输入数字');this.value='';}">

方法2

    <input type="text" t_value="" o_value="" onkeypress="if(!this.value.match(/^[\+\-]?\d*?\.?\d*?$/))this.value=this.t_value;else this.t_value=this.value;if(this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/))this.o_value=this.value" onkeyup="if(!this.value.match(/^[\+\-]?\d*?\.?\d*?$/))this.value=this.t_value;else this.t_value=this.value;if(this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/))this.o_value=this.value" onblur="if(!this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?|\.\d*?)?$/))this.value=this.o_value;else{if(this.value.match(/^\.\d+$/))this.value=0+this.value;if(this.value.match(/^\.$/))this.value=0;this.o_value=this.value}">

只能输入字母和汉字

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

只能输入英文字母和数字,不能输入中文

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

只能输入数字和英文

<input onKeyUp="value=value.replace(/[^\d|chun]/g,'')"> 

小数点后只能有最多两位(数字,中文都可输入),不能输入字母和运算符号:

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

小数点后只能有最多两位(数字,字母,中文都可输入),可以输入运算符号:

<input onkeyup="this.value=this.value.replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3')">

禁止特殊字符:

onKeyPress="if(event.keyCode < 45 || event.keyCode > 57 ) event.returnValue = false;"

只能输入汉字



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


只能输入数字



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


只能输入英文和数字



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


控制输入框只能输入文字或数字,也可以不允许输入特殊字符

这里不允许输入如下字符: (像 ^&* 等)



<textarea rows=2 cols=20 name=comments onKeypress="if ((event.keyCode > 32 && event.keyCode < 48) || (event.keyCode > 57 && event.keyCode < 65) || (event.keyCode > 90 && event.keyCode < 97)) event.returnValue = false;">


只禁止空格输入

onkeyup="value=value.replace(//s/g,'')"

onkeydown="if(event.keyCode==32) return false"


只能输入中文和英文

onkeyup="value=value.replace(/[^/a-zA-Z/u4E00-/u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^/a-zA-Z/u4E00-/u9FA5]/g,''))"

不允许输入特殊字符和空格

<input id="code" onkeypress="return ValidateSpecialCharacter();" onblur="validate(this)"/>

不能为空



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


判断字符由字母和数字,下划线,点号组成.且开头的只能是下划线和字母

/^([a-zA-z_]{1})([\w]*)$/g.test(str)

只能输入数字



<input name="text" type="text" id="NewPage" onKeyUp="value=value.replace(/\D/g,'')" onafterpaste="value=value.replace(/\D/g,'')" >


只能输入中文



<input type="text" onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')">


只能输入英文



<input type="text" onkeyup="value=value.replace(/[^\a-\z\A-\Z]/g,'')">
<input type="text" onkeyup="value=value.replace(/[^a-zA-Z]/g,'')">


只允许输入英文,且不能粘贴也无法弹出粘贴菜单



<input type="text" onkeyup="value=value.replace(/[^\a-\z\A-\Z]/g,'')" onkeydown="fncKeyStop(event)" onpaste="return false" oncontextmenu = "return false"/>


只能输入数字和点号(注意:在[^\d.]里的d不能写成大写D,否则就变成除了数字以外的所有字符)



<input name="price" type="text" size="8" maxlength="8" onkeyup="value=value.replace(/[^\d\.]/g,'')" >


小数点后只能有最多两位(数字,中文都可输入),不能输入字母和运算符号



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


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值