解析使用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 相关文章推荐
用jscript实现列出安装的软件列表
Jun 18 Javascript
extjs 初始化checkboxgroup值的代码
Sep 21 Javascript
仿谷歌主页js动画效果实现代码
Jul 14 Javascript
javascript的parseFloat()方法精度问题探讨
Nov 26 Javascript
JavaScript实现彩虹文字效果的方法
Apr 16 Javascript
JavaScript中iframe实现局部刷新的几种方法汇总
Jan 06 Javascript
jQuery链式调用与show知识浅析
May 11 Javascript
底部悬浮通栏可以关闭广告位的实现方法
Jun 01 Javascript
jQuery实例—选项卡的简单实现(js源码和jQuery)
Jun 14 Javascript
Vue.js框架路由使用方法实例详解
Aug 25 Javascript
javascript面向对象三大特征之封装实例详解
Jul 24 Javascript
Vue实现圆环进度条的示例
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
php 删除无限级目录与文件代码共享
2008/11/22 PHP
jQuery+php实现ajax文件即时上传的详解
2013/06/17 PHP
thinkphp中字符截取函数msubstr()用法分析
2016/01/09 PHP
php生成二维码不保存服务器还有下载功能的实现代码
2018/08/09 PHP
详解PHP神奇又有用的Trait
2019/03/25 PHP
判断用户的在线状态 onbeforeunload事件
2011/03/05 Javascript
javascript判断ie浏览器6/7版本加载不同样式表的实现代码
2011/12/26 Javascript
js获取或设置当前窗口url参数的小例子
2013/10/14 Javascript
js代码实现的加入收藏效果并兼容主流浏览器
2014/06/23 Javascript
jQuery+AJAX实现网页无刷新上传
2015/02/22 Javascript
Jquery效果大全之制作电脑健康体检得分特效附源码下载
2015/11/02 Javascript
每天一篇javascript学习小结(基础知识)
2015/11/10 Javascript
Javascript removeChild()删除节点及删除子节点的方法
2015/12/27 Javascript
Bootstrap打造一个左侧折叠菜单的系统模板(二)
2016/05/17 Javascript
easyui window refresh 刷新两次的解决方法(推荐)
2016/05/18 Javascript
angular.js之路由的选择方法
2016/09/24 Javascript
Bootstrap模态框禁用空白处点击关闭
2016/10/20 Javascript
微信小程序进行微信支付的步骤昂述
2016/12/01 Javascript
Vue响应式原理详解
2017/04/18 Javascript
jQuery.Form实现Ajax上传文件同时设置headers的方法
2017/06/26 jQuery
从零开始最小实现react服务器渲染详解
2018/01/26 Javascript
Angular 封装并发布组件的方法示例
2018/04/19 Javascript
Vuejs2 + Webpack框架里,模拟下载的实例讲解
2018/09/05 Javascript
python 表达式和语句及for、while循环练习实例
2017/07/07 Python
Python使用numpy模块实现矩阵和列表的连接操作方法
2019/06/26 Python
基于Python共轭梯度法与最速下降法之间的对比
2020/04/02 Python
Python实现爬取网页中动态加载的数据
2020/08/17 Python
OpenCV图片漫画效果的实现示例
2020/08/18 Python
使用HTML5的File实现base64和图片的互转
2013/08/01 HTML / CSS
电钳专业个人求职信
2014/01/04 职场文书
教室标语大全
2014/06/21 职场文书
公司合作协议范文
2014/10/01 职场文书
采购内勤岗位职责
2015/04/13 职场文书
秋收起义观后感
2015/06/11 职场文书
小学生作文写作技巧100例,非常实用!
2019/07/08 职场文书
如何使用vue3打造一个物料库
2021/05/08 Vue.js