解析使用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 相关文章推荐
做好七件事帮你提升jQuery的性能
Feb 06 Javascript
javascript调试之DOM断点调试法使用技巧分享
Apr 15 Javascript
jquery中的工具使用方法$.isFunction, $.isArray(), $.isWindow()
Aug 09 Javascript
clipboard.js无需Flash无需依赖任何JS库实现文本复制与剪切
Oct 10 Javascript
全面解析bootstrap格子布局
May 22 Javascript
JS中setTimeout和setInterval的最大延时值详解
Feb 13 Javascript
Vue 实时监听窗口变化 windowresize的两种方法
Nov 06 Javascript
layDate日期控件使用方法详解
Nov 15 Javascript
jQuery实现表格的增、删、改操作示例
Jan 27 jQuery
vue实现的网易云音乐在线播放和下载功能案例
Feb 18 Javascript
js验证账户名是否重复
May 26 Javascript
javascript实现打砖块小游戏(附完整源码)
Sep 18 Javascript
使用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
使用sockets:从新闻组中获取文章(二)
2006/10/09 PHP
深入php-fpm的两种进程管理模式详解
2013/06/03 PHP
PHP怎么实现网站保存快捷方式方便用户随时浏览
2013/08/15 PHP
PHP JS Ip地址及域名格式检测代码
2013/09/27 PHP
php实现cc攻击防御和防止快速刷新页面示例
2014/02/13 PHP
php采用curl模仿登录人人网发布动态的方法
2014/11/07 PHP
ThinkPHP路由机制简介
2016/03/23 PHP
php提高脚本性能的4个技巧
2020/08/18 PHP
document 和 document.all 分别什么时候用
2006/06/22 Javascript
JQuery自定义事件的应用 JQuery最佳实践
2010/08/01 Javascript
JavaScript原生对象之Date对象的属性和方法详解
2015/03/13 Javascript
Javascript数组Array基础介绍
2016/03/13 Javascript
Javascript 6里的4个新语法
2016/08/25 Javascript
React创建组件的三种方式及其区别
2017/01/12 Javascript
bootstarp modal框居中显示的实现代码
2017/02/18 Javascript
详解Vue.js基于$.ajax获取数据并与组件的data绑定
2017/05/26 Javascript
JSON对象转化为字符串详解
2017/08/11 Javascript
解决vue keep-alive 数据更新的问题
2018/09/21 Javascript
开发中常用的25个JavaScript单行代码(小结)
2019/06/28 Javascript
[09:23]国际邀请赛采访专栏:iG战队VK,Tongfu战队Cu
2013/08/05 DOTA
[57:41]Secret vs Serenity 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
windows下安装python paramiko模块的代码
2013/02/10 Python
Python设计模式之职责链模式原理与用法实例分析
2019/01/11 Python
解决在pycharm中显示额外的 figure 窗口问题
2019/01/15 Python
Python hashlib常见摘要算法详解
2020/01/13 Python
关于初始种子自动选取的区域生长实例(python+opencv)
2020/01/16 Python
Python使用Selenium模拟浏览器自动操作功能
2020/09/08 Python
WoolOvers爱尔兰:羊绒、羊毛和棉针织品
2017/01/04 全球购物
马来西亚网上美容店:Hermo.my
2017/11/25 全球购物
美国糖果店:Sugarfina
2019/02/21 全球购物
英语道歉信范文
2014/01/09 职场文书
学习雷锋倡议书
2014/04/15 职场文书
保护环境倡议书500字
2014/05/19 职场文书
党员个人公开承诺书
2014/08/29 职场文书
2015年元旦主持词结束语
2014/12/14 职场文书
挂职锻炼个人总结
2015/03/05 职场文书