解析使用js判断只能输入数字、字母等验证的方法(总结)


Posted in Javascript onMay 14, 2013

JS判断只能是数字和小数点
0.不能输入中文
1)<input onpaste=”return false;” type=”text” name=”textfield” style=”width:400px; ime-mode:disabled” value=””>
2)<script>
function chkIt(frm){
if (frm.n1.value.length>0&&frm.n1.value.match(/[\x01-\xFF]*/)==false){
alert(‘n1不能输入中文!')
frm.n1.focus();
return false;
}
}
</script>
<body>
<form onsubmit=”return chkIt(this)”>
<input name=”n1″>
<input name=”n2″>
<input name=”smt” type=”submit” value=”提交”>
</form>
</body>

1.文本框只能输入数字代码(小数点也不能输入)
<input onkeyup=”this.value=this.value.replace(/\D/g,”)” onafterpaste=”this.value=this.value.replace(/\D/g,”)”>
2.只能输入数字,能输小数点.
<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=”;}”>
3.数字和小数点方法二
<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}”>
4.只能输入字母和汉字
<input onkeyup=”value=value.replace(/[\d]/g,”) “onbeforepaste=”clipboardData.setData(‘text',clipboardData.getData(‘text').replace(/[\d]/g,”))” maxlength=10 name=”Numbers”>
5.只能输入英文字母和数字,不能输入中文
<input onkeyup=”value=value.replace(/[^\w\.\/]/ig,”)”>
6.只能输入数字和英文<font color=”Red”>chun</font>
<input onKeyUp=”value=value.replace(/[^\d|chun]/g,”)”>
7.小数点后只能有最多两位(数字,中文都可输入),不能输入字母和运算符号:
<input onKeyPress=”if((event.keyCode<48 || event.keyCode>57) && event.keyCode!=46 || /\.\d\d$/.test(value))event.returnValue=false”>
8.小数点后只能有最多两位(数字,字母,中文都可输入),可以输入运算符号:
<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,”))”>
style=”ime-mode:disabled”禁止汉字输入法

只能输入数字:
<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,”))”>
控制输入框只能输入文字或数字,也可以不允许输入特殊字符
这里不允许输入如下字符: (像 ^&* 等)<br>
<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,”)”>
——————————————————————————————————————?
1.文本框只能输入数字代码(小数点也不能输入)
<input onkeyup=”this.value=this.value.replace(//D/g,”)” onafterpaste=”this.value=this.value.replace(//D/g,”)”>
2.只能输入数字,能输小数点.
<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=”;}”>
3.数字和小数点方法二
<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}”>
4.只能输入字母和汉字
<input onkeyup=”value=value.replace(/[/d]/g,”) “onbeforepaste=”clipboardData.setData(‘text',clipboardData.getData(‘text').replace(/[/d]/g,”))” maxlength=10 name=”Numbers”>
5.只能输入英文字母和数字,不能输入中文
<input onkeyup=”value=value.replace(/[^/w/.//]/ig,”)”>
6.只能输入数字和英文<font color=”Red”>chun</font>
<input onKeyUp=”value=value.replace(/[^/d|chun]/g,”)”>
7.小数点后只能有最多两位(数字,中文都可输入),不能输入字母和运算符号:
<input onKeyPress=”if((event.keyCode<48 || event.keyCode>57) && event.keyCode!=46 || //./d/d$/.test(value))event.returnValue=false”>
8.小数点后只能有最多两位(数字,字母,中文都可输入),可以输入运算符号:
<input onkeyup=”this.value=this.value.replace(/^(/-)*(/d+)/.(/d/d).*$/,'$1$2.$3′)”>

只能输入中文、英文、数字、@符号和.符号
<input type=”text” onkeyup=”value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5\@\.]/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>里输入onkeyup=”value=value.replace(/[^\X]/g,”)” 然后在(/[\X]/g,”)里的X换成你想输入的代码就可以了
中文:u4E00-u9FA5
数字:d、0-9
英文:a-z、A-Z
其它符号@,点或其它符号.也可以多个,用\隔开就行了.
例如:
中、英文和数字加@符号加点符号:\a-\z\A-\Z0-9\u4E00-\u9FA5\@\.
若 想在文本框里不能右键弹出菜单和不能粘贴进复制的信息的话就要在<input>里输入 onKeyDown=”fncKeyStop(event)” onpaste=”return false” oncontextmenu=”return false;”
—————————————————————————————————————————————

其一,只允许输入数字和小数点。
<input onKeypress=”return (/[/d.]/.test(String.fromCharCode(event.keyCode)))” style=”ime-mode:Disabled”>

其二,判断的更详细一些,甚至22..2这样不算数字也判断得出来

<script>
function check(){
if (isNaN(tt.value))
{alert(“非法字符!”);
tt.value=””;}
}
</script>
<input type=”text” name=”tt” onkeyup=”check();”>

其三,只允许输入整数。其实也完全可以根据第三条来举一反三做一些限制。

<script language=javascript>
function onlyNum()
{
if(!(event.keyCode==46)&&!(event.keyCode==8)&&!(event.keyCode==37)&&!(event.keyCode==39))
if(!((event.keyCode>=48&&event.keyCode<=57)||(event.keyCode>=96&&event.keyCode<=105)))
event.returnValue=false;
}
</script><input onkeydown=”onlyNum();” style=”ime-mode:Disabled>
结语,其实

style=”ime-mode:Disabled
这句是比较实用的。意为关闭输入法。省得有些人开着全角输入数字,结果输入不进去来找你哭天抹泪的,还怪你设计的不好。

只允许输入数字
<input name=”username” type=”text” onkeyup=”value=this.value.replace(//D+/g,”)”>

只允许输入英文字母、数字和下划线(以下二种方法实现)
<input name=”userna其一,只允许输入数字和小数点。
<input onKeypress=”return (/[/d.]/.test(String.fromCharCode(event.keyCode)))” style=”ime-mode:Disabled”>

其二,判断的更详细一些,甚至22..2这样不算数字也判断得出来

<script>
function check(){
if (isNaN(tt.value))
{alert(“非法字符!”);
tt.value=””;}
}
</script>
<input type=”text” name=”tt” onkeyup=”check();”>

其三,只允许输入整数。其实也完全可以根据第三条来举一反三做一些限制。

<script language=javascript>
function onlyNum()
{
if(!(event.keyCode==46)&&!(event.keyCode==8)&&!(event.keyCode==37)&&!(event.keyCode==39))
if(!((event.keyCode>=48&&event.keyCode<=57)||(event.keyCode>=96&&event.keyCode<=105)))
event.returnValue=false;
}
</script><input onkeydown=”onlyNum();” style=”ime-mode:Disabled>
结语,其实

style=”ime-mode:Disabled
这句是比较实用的。意为关闭输入法。省得有些人开着全角输入数字,结果输入不进去来找你哭天抹泪的,还怪你设计的不好。

只允许输入数字
<input name=”username” type=”text” onkeyup=”value=this.value.replace(//D+/g,”)”>

只允许输入英文字母、数字和下划线(以下二种方法实现)
<input name=”username” type=”text” style=”ime-mode:disabled”>
<input name=”username” type=”text” onkeyup=”value=value.replace(/[^/w/.//]/ig,”)”>

只允许输入英文字母、数字和&=@
<input name=”username” type=”text” onkeyup=”value=value.replace(/[^/w=@&]|_/ig,”)”>

只允许输入汉字
<input name=”username” type=”text” onkeyup=”value=value.replace(/[^/u4E00-/u9FA5]/g,”)”>
me” type=”text” style=”ime-mode:disabled”>
<input name=”username” type=”text” onkeyup=”value=value.replace(/[^/w/.//]/ig,”)”>

只允许输入英文字母、数字和&=@
<input name=”username” type=”text” onkeyup=”value=value.replace(/[^/w=@&]|_/ig,”)”>

只允许输入汉字
<input name=”username” type=”text” onkeyup=”value=value.replace(/[^/u4E00-/u9FA5]/g,”)”>

Javascript 相关文章推荐
Javascript 学习笔记之 对象篇(二) : 原型对象
Jun 24 Javascript
每天一篇javascript学习小结(Function对象)
Nov 16 Javascript
jquery插件EasyUI中form表单提交实例分享
Jan 11 Javascript
jQuery+css实现的tab切换标签(兼容各浏览器)
Jan 28 Javascript
浅谈js在html中的加载执行顺序,多个jquery ready执行顺序
Nov 26 Javascript
浅谈Javascript中的Label语句
Dec 14 Javascript
jQuery插件HighCharts绘制2D带有Legend的饼图效果示例【附demo源码下载】
Mar 10 Javascript
浅谈angularjs依赖服务注入写法的注意点
Apr 24 Javascript
js学习总结之DOM2兼容处理顺序问题的解决方法
Jul 27 Javascript
微信小程序生成二维码的示例代码
Mar 29 Javascript
Vue看了就会的8个小技巧
Jan 21 Vue.js
手动实现vue2.0的双向数据绑定原理详解
Feb 06 Vue.js
使用js检测浏览器的实现代码
May 14 #Javascript
Javascript 垃圾收集机制介绍理解
May 14 #Javascript
JavaScript实现GriwView单列全选(自写代码)
May 13 #Javascript
jquery实现漂浮在网页右侧的qq在线客服插件示例
May 13 #Javascript
js 程序执行与顺序实现详解
May 13 #Javascript
JS/jQuery实现默认显示部分文字点击按钮显示全部内容
May 13 #Javascript
JS 加入收藏夹的代码(主流浏览器通用)
May 13 #Javascript
You might like
《猛禽小队》:DC宇宙的又一超级大烂片
2020/04/09 欧美动漫
syphon 虹吸式咖啡冲泡冲煮倒水的得与失
2021/03/03 冲泡冲煮
让PHP COOKIE立即生效,不用刷新就可以使用
2011/03/09 PHP
php中require和require_once的区别说明
2014/02/27 PHP
PHP获取昨天、今天及明天日期的方法
2016/02/03 PHP
PHP迭代与递归实现无限级分类
2017/08/28 PHP
php生成word并下载代码实例
2019/03/15 PHP
PHP实现百度人脸识别
2019/05/06 PHP
php快速导入大量数据的实例方法
2019/09/23 PHP
jQuery+css+html实现页面遮罩弹出框
2013/03/21 Javascript
深入解析contentWindow, contentDocument
2013/07/04 Javascript
判定是否原生方法的JS代码
2013/11/12 Javascript
js中for in的用法示例解析
2013/12/25 Javascript
JS返回iframe中frameBorder属性值的方法
2015/04/01 Javascript
js验证真实姓名与身份证号是否匹配
2015/10/13 Javascript
Javascript中字符串和数字的操作方法整理
2017/01/22 Javascript
关于vue.js过渡css类名的理解(推荐)
2017/04/10 Javascript
使用JS和canvas实现gif动图的停止和播放代码
2017/09/01 Javascript
NW.js 简介与使用方法
2018/02/01 Javascript
详解Vue webapp项目通过HBulider打包原生APP(vue+webpack+HBulider)
2019/02/02 Javascript
express启用https使用小记
2019/05/21 Javascript
vue中axios防止多次触发终止多次请求的示例代码(防抖)
2020/02/16 Javascript
[01:45]IMBATV TI4前线报道-选手到达
2014/07/07 DOTA
Python中splitlines()方法的使用简介
2015/05/20 Python
Python中使用双下划线防止类属性被覆盖问题
2019/06/27 Python
详解Pandas之容易让人混淆的行选择和列选择
2019/07/10 Python
pytorch多GPU并行运算的实现
2019/09/27 Python
基于torch.where和布尔索引的速度比较
2020/01/02 Python
python实现俄罗斯方块小游戏
2020/04/24 Python
Python3+PyCharm+Django+Django REST framework配置与简单开发教程
2021/02/16 Python
ProBikeKit英国:在线公路自行车之家
2017/02/10 全球购物
面向游戏玩家和书呆子的极客订阅盒:Loot Crate
2020/11/25 全球购物
消防宣传语大全
2015/07/13 职场文书
python缺失值的解决方法总结
2021/06/09 Python
关于python中模块和重载的问题
2021/11/02 Python
 分享一个Python 遇到数据库超好用的模块
2022/04/06 Python