JavaScript通过RegExp实现客户端验证处理程序


Posted in Javascript onMay 07, 2013

1.让文本框只允许输入数字,运用asp.net mvc3.0的文本框控件

@Html.TextBox("txt",null, new {@style="width:300;",onkeypress="return RegValidateIsDigit(event)" })

可以看到在文本框中注册了onkeypress事件,当在文本框中输入一个字符按下键盘的时候就会触发该JavaScript的函数
<script type="text/javascript"> 
function RegValidateIsDigit(e) { 
var KeyChar; 
debugger; 
////判断浏览器 
if (window.event) //IE 
{ 
KeyChar = e.keyCode; 
} 
else if (e.which)///FireFox等 
{ 
KeyChar = e.which; 
} 
var str = String.fromCharCode(KeyChar); ///通过UniCode编码来来查找相应的字符 
return regIsDigit(str); 
} 
function regIsDigit(fData) { 
///定义正则进行匹配 
var reg = new RegExp("^[0-9]$"); 
return (reg.test(fData)); 
} 
</script>

首先判断一下浏览器,进行处理兼容性。然后通过String.formCharCode(KeyChar)来查找相应的字符
最后在函数regIsDigit函数中
定义正则进行匹配
var reg = new RegExp("^[0-9]$");

因为是数值0-9所以也等同于\d即
var reg = new RegExp("\\d$");

正则表达式直接量也被定义为包含在一对斜杠(/)之间的字符.所以,JavaScript可能会包含如下的代码:
var reg=/\d$/;

这里还用到了test函数: 检查指定的字符串是否存在。常用的还有exec match search replace split等函数。
如果搞懂了第一个那么只需要套用正则就可以使用了哦。
2.文本框只允许输入中文
function RegValidateIsChinese(str) { 
//var reg = new RegExp("^[\u4e00-\u9fa5]+$"); 
var reg = /^[\u4E00-\u9FA5]+$/; 
var str=document.getElementById("text").value; 
return (reg.test(str)); 
}

RegValidateIsChinese("输入的字符串") 是汉字则返回true,不全是汉字则返回false
3.邮箱输入格式的判断
function RegValidateIsEmail(str) { 
//var reg = /^([a-zA-Z0-9_-])+@@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/; 
var reg=/^\w+((-\w+)|(\.\w+))*@@{1}\w+\.{1}\w{2,4}(\.{0,1}\w{2}){0,1}/ig; 
if (reg.test(str)) { 
alert("是邮箱"); 
} 
else { 
alert("格式不对"); 
} 
}

两个定义初步测试都可以。
Javascript 相关文章推荐
基于jquery的实现简单的表格中增加或删除下一行
Aug 01 Javascript
在jQuery ajax中按钮button和submit的区别分析
Oct 07 Javascript
jQuery实用基础超详细介绍
Apr 11 Javascript
Javascript 绘制 sin 曲线过程附图
Aug 21 Javascript
jQuery学习笔记之2个小技巧
Jan 19 Javascript
javaScript中push函数用法实例分析
Jun 08 Javascript
js和jq使用submit方法无法提交表单的快速解决方法
May 17 Javascript
Vue.js组件tabs实现选项卡切换效果
Dec 01 Javascript
layui 弹出层回调获取弹出层数据的例子
Sep 02 Javascript
JavaScript检测浏览器是否支持CSS变量代码实例
Apr 03 Javascript
vue 将多个过滤器封装到一个文件中的代码详解
Sep 05 Javascript
JavaScript实例 ODO List分析
Jan 22 Javascript
JS注册/移除事件处理程序(ExtJS应用程序设计实战)
May 07 #Javascript
使用Math.floor与Math.random取随机整数的方法详解
May 07 #Javascript
基于JavaScript 类的使用详解
May 07 #Javascript
解读JavaScript中 For, While与递归的用法
May 07 #Javascript
JS Pro-深入面向对象的程序设计之继承的详解
May 07 #Javascript
基于JavaScript实现继承机制之原型链(prototype chaining)的详解
May 07 #Javascript
基于JavaScript实现继承机制之构造函数+原型链混合方式的使用详解
May 07 #Javascript
You might like
php for 循环使用的简单实例
2016/06/02 PHP
tp5.1 框架数据库-数据集操作实例分析
2020/05/26 PHP
JS 容错处理代码, 屏蔽错误信息
2021/03/09 Javascript
雄兵连第三季海报曝光,艾妮熙德成主角,蔷薇新造型
2021/03/09 国漫
任意位置显示html菜单
2007/02/01 Javascript
javascript 尚未实现错误解决办法
2008/11/27 Javascript
Javascript new关键字的玄机 以及其它
2010/08/25 Javascript
利用JavaScript实现新闻滚动效果(实例代码)
2013/11/27 Javascript
jquery自定义函数的多种方法
2014/01/09 Javascript
jQuery实现div浮动层跟随页面滚动效果
2014/02/11 Javascript
js中的cookie的读写操作示例详解
2014/04/17 Javascript
加随机数引入脚本不让浏览器读取缓存
2014/09/04 Javascript
JavaScript 学习笔记之数据类型
2015/01/14 Javascript
AngularJS实现表单验证
2015/01/28 Javascript
JS日期格式化之javascript Date format
2015/10/01 Javascript
JS组件Bootstrap Select2使用方法详解
2020/04/17 Javascript
Javascript技术栈中的四种依赖注入小结
2016/02/27 Javascript
JS Canvas定时器模拟动态加载动画
2016/09/17 Javascript
AngularJS实现的根据数量与单价计算总价功能示例
2017/12/26 Javascript
Angularjs中的$apply及优化使用详解
2018/07/02 Javascript
Node+OCR实现图像文字识别功能
2018/11/26 Javascript
JS回调函数深入理解
2019/10/16 Javascript
pyqt4教程之实现windows窗口小示例分享
2014/03/07 Python
python实现巡检系统(solaris)示例
2014/04/02 Python
django 实现将本地图片存入数据库,并能显示在web上的示例
2019/08/07 Python
python如何随机生成高强度密码
2020/08/19 Python
新加坡领先的时尚生活方式零售品牌:CHARLES & KEITH
2018/01/16 全球购物
创业计划书六个要素
2013/12/26 职场文书
退休感言
2014/01/28 职场文书
婚内房产协议书范本
2014/10/02 职场文书
2015世界地球日活动总结
2015/02/09 职场文书
离婚承诺书格式范文
2015/05/04 职场文书
签约仪式致辞
2015/07/30 职场文书
公司业务员管理制度
2015/08/05 职场文书
MySQL不使用order by实现排名的三种思路总结
2021/06/02 MySQL
python模拟浏览器 使用selenium进入好友QQ空间并留言
2022/04/12 Python