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 相关文章推荐
js实现的早期滑动门菜单效果代码
Aug 27 Javascript
javascript中Date format(js日期格式化)方法小结
Dec 17 Javascript
jQuery获取剪贴板内容的方法
Jun 16 Javascript
JavaScript解析JSON格式数据的方法示例
Jan 24 Javascript
jQuery实现切换隐藏与显示同时切换图标功能
Oct 29 jQuery
微信小程序ajax实现请求服务器数据及模版遍历数据功能示例
Dec 15 Javascript
js 将canvas生成图片保存,或直接保存一张图片的实现方法
Jan 02 Javascript
Koa项目搭建过程详细记录
Apr 12 Javascript
Vue.js 2.x之组件的定义和注册图文详解
Jun 19 Javascript
使用iView Upload 组件实现手动上传图片的示例代码
Oct 01 Javascript
JavaScript获取某一天所在的星期
Sep 05 Javascript
vue/cli 配置动态代理无需重启服务的方法
May 20 Vue.js
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 中的类
2006/10/09 PHP
PHP Memcached应用实现代码
2010/02/08 PHP
用PHP实现的四则运算表达式计算实现代码
2011/08/02 PHP
PHP If Else(elsefi) 语句
2013/04/07 PHP
自己写的兼容低于PHP 5.5版本的array_column()函数
2014/10/24 PHP
YII框架实现自定义第三方扩展操作示例
2019/04/26 PHP
PHP+fiddler抓包采集微信文章阅读数点赞数的思路详解
2019/12/20 PHP
Html中JS脚本执行顺序简单举例说明
2010/06/19 Javascript
分享一个我自己写的ToolTip提示插件(附源码)
2013/01/20 Javascript
JQuery+Ajax无刷新分页的实例代码
2014/02/08 Javascript
网页收藏夹显示ICO图标(代码少)
2015/08/04 Javascript
基于Arcgis for javascript实现百度地图ABCD marker的效果
2015/09/12 Javascript
在网页中插入百度地图的步骤详解
2016/12/02 Javascript
Javascript中document.referrer隐藏来源的方法
2017/01/16 Javascript
JS简单实现自定义右键菜单实例
2017/05/31 Javascript
uni-app之APP和小程序微信授权方法
2019/05/09 Javascript
JS猜数字游戏实例讲解
2020/06/30 Javascript
vue自动添加浏览器兼容前后缀操作
2020/08/13 Javascript
vant-ui AddressEdit地址编辑和van-area的用法说明
2020/11/03 Javascript
python list 合并连接字符串的方法
2013/03/09 Python
跟老齐学Python之关于类的初步认识
2014/10/11 Python
Python3实现简单可学习的手写体识别(实例讲解)
2017/10/21 Python
python并发2之使用asyncio处理并发
2017/12/21 Python
Python列表解析配合if else的方法
2018/06/23 Python
Django 如何使用日期时间选择器规范用户的时间输入示例代码详解
2020/05/22 Python
Python3.9.1中使用split()的处理方法(推荐)
2021/02/07 Python
Java里面有没有全局变量?为什么?
2015/02/06 面试题
值传递还是引用传递
2015/02/08 面试题
后勤园长自我鉴定
2013/10/17 职场文书
公司前台辞职报告
2014/01/19 职场文书
优秀党支部书记事迹材料
2014/05/29 职场文书
女生节标语
2014/06/26 职场文书
2014年国庆节广播稿
2014/09/19 职场文书
入股协议书范本
2014/11/01 职场文书
2015会计试用期工作总结
2014/12/12 职场文书
小学生必读成语故事大全:送给暑假的你们
2019/07/09 职场文书