当前位置: 首页 > 图文教程 > 网络编程 > 正则表达式 > javascript 基于正则表达式的文本框验证代码

正则表达式
无殇 javascript正则练习器
javascript用正则表达式把1234567890替换为abcdefghij
一个匹配形如“#100”的正则表达式
又一不错的应用-正则来查找替换字符串
[asp]中的正则表达式运用代码
asp 正则表达式检测http开头的函数
javascript下正则匹配百分比的代码
javascript下一个还原html代码的正则
JS正则表达式提取字符串中所有汉字的脚本
[asp]匹配网址的正则
[js]一个只删除所有font标签的正则函数
[原创]正则替换字符串功能
javascript 正则 判断是否是数字的脚本
[a] 1 [/a]转换为网址的UBB的正则
PHP下ereg实现匹配ip的正则
[js]用JAVASCRIPT正则表达式限制文本字节数的代码
dw(dreamweaver)正则表达式函数列表
[原创]java 正则表达式基础,实例学习资料收集大全
asp下替换非数字为空的正则
javascript利用正则快速找出两个字符串的不同字符

javascript 基于正则表达式的文本框验证代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 338 ::
收藏到网摘: n/a

js验证文本框内容,以前ruanchen.com提供过不少是基于js函数版本的,这里提供一些正则表达式版本,大家学习归学习,最好是基于函数的绑定操作。代码分离技术。

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

2,只能输入英文和数字
<input onblur="if(/[^0-9a-zA-Z]/g.test(value))alert('有错')">
<input onkeyup="value=value.replace(/[^0-9a-zA-Z]/g,'')"/>
<input type="text" onkeyup="value=value.replace(/[^\a-\z\A-\Z0-9]/g,'')">

3,判断字符由字母和数字,下划线,点号组成.且开头的只能是下划线和字母
/^([a-zA-z_]{1})([\w]*)$/g.test(str)

4,只能输入数字
<input name="text" type="text" id="NewPage" onKeyUp="value=value.replace(/\D/g,'')" onafterpaste="value=value.replace(/\D/g,'')" >

5,只能输入中文
<input type="text" onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')">

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

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

8,只允许输入英文,且不能粘贴也无法弹出粘贴菜单
<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;"