编辑浪子版表单验证类


Posted in Javascript onMay 12, 2007

Autor:编辑浪子
From:http://bbs.51js.com/thread-68161-1-1.html
//表单验证类
function ValidatorClass()
{
 var IsError = false;

 //检查姓名,只能输入中文、字母、数字、下划线
 this.ChkName = function(obj,msg)
 {
 if (IsError) return;
 if (obj.value.Trim().length<2||(/[^u4e00-u9fa5w]/.test(obj.value.Trim()))) ErrorHandle(obj,msg);
 }

 //检查邮件地址
 this.ChkEmail = function(obj,msg)
 {
 if (IsError) return;
 if (!/^w+@w+.(?:com|cn|org|net|cc|tv|info|com.cn|net.cn|org.cn|gov.cn)$/i.test(obj.value.Trim())) ErrorHandle(obj,msg);
 }

 //检查地名,只能是中文,并不能为空
 this.ChkPlace = function(obj,msg)
 {
 if (IsError) return;
 if (obj.value.Trim().length<1||(/[^u4e00-u9fa5]/.test(obj.value.Trim()))) ErrorHandle(obj,msg);
 }

 //检查详细地址
 this.ChkAddress = function (obj,msg)
 {
 if (IsError) return;
 if (obj.value.Trim().length<2) ErrorHandle(obj,msg);
 }

 //检查邮件编码
 this.ChkPostNumber = function (obj,msg)
 {
 if (IsError) return;
 if(!(/^d{6}$/.test(obj.value.Trim()))) ErrorHandle(obj,msg);
 }

 //检查手机号码
 this.ChkMobile = function (obj,msg)
 {
 if (IsError) return;
 if (!(/^(?:13d|159)-?d{5}(d{3}|*{3})$/.test(obj.value.Trim()))) ErrorHandle(obj,msg);
 }

 //检查固定电话号码
 this.ChkPhone = function (obj,msg)
 {
 if (IsError) return;
 if (!((/^d{3,4}-?d{4,5}(d{3}|*{3})$/.test(obj.value.Trim())))) ErrorHandle(obj,msg);
 }

 //提交表单事件
 this.Submit = function (Form,msg)
 {
 if (IsError) return;
 if (msg) alert(msg);
 Form.submit();
 }

 //错误处理
 function ErrorHandle(obj,msg)
 {
 alert(msg);
 IsError = true;
 obj.focus(); 
 }

应用实例:
function ChkForm()
{
  var Form = document.TestForm;
  var Validator = new ValidatorClass();
  Validator.ChkName(Form.ZD_UserName,"订货人姓名不合法!");
  Validator.ChkEmail(Form.ZD_Email,"订货人邮件地址不合法!");
  Validator.ChkPlace(Form.ZD_Province,"订货人省份不合法!");
  Validator.ChkPlace(Form.ZD_City,"订货人城市不合法!");
  Validator.ChkAddress(Form.ZD_Address,"订货人地址不合法!");
  Validator.ChkPostNumber(Form.ZD_Zip,"订货人邮编不合法!");
  Validator.ChkMobile(Form.ZD_Mobile,"订货人移动电话不合法!");
  Validator.ChkPhone(Form.ZD_Phone,"订货人固定电话不合法!");
  Validator.Submit(Form,"验证成功!");
}

Javascript 相关文章推荐
通过JQuery实现win8一样酷炫的动态磁贴效果(示例代码)
Jul 13 Javascript
jquery判断元素的子元素是否存在的示例代码
Feb 04 Javascript
使用js操作css实现js改变背景图片示例
Mar 10 Javascript
将数字转换成大写的人民币表达式的js函数
Sep 21 Javascript
JS修改iframe页面背景颜色的方法
Apr 01 Javascript
JavaScript 实现的 zip 压缩和解压缩工具包Zip.js使用详解
Dec 14 Javascript
Bootstrap嵌入jqGrid,使你的table牛逼起来
May 05 Javascript
去除html代码里面的script正则方法
May 19 Javascript
JavaScript适配器模式详解
Oct 19 Javascript
node.js利用socket.io实现多人在线匹配联机五子棋
May 31 Javascript
javascriptvoid(0)含义以及与&quot;#&quot;的区别讲解
Jan 19 Javascript
微信小程序如何利用getCurrentPages进行页面传值
Jul 01 Javascript
textContent在Firefox下与innerText等效的属性
May 12 #Javascript
关于__defineGetter__ 和__defineSetter__的说明
May 12 #Javascript
JavaScript Archive Network 集合
May 12 #Javascript
(仅IE下有效)关于checkbox 三态
May 12 #Javascript
弹出广告特效代码(一个IP只弹出一次)
May 11 #Javascript
模拟用户操作Input元素,不会触发相应事件
May 11 #Javascript
网上抓的一个特效
May 11 #Javascript
You might like
通达OA公共代码 php常用检测函数
2011/12/14 PHP
检查用户名是否已在mysql中存在的php写法
2014/01/20 PHP
PHP中检查isset()和!empty()函数的必要性
2019/02/13 PHP
js apply/call/caller/callee/bind使用方法与区别分析
2009/10/28 Javascript
js实时获取系统当前时间实例代码
2013/06/28 Javascript
from表单多个按钮提交用onclick跳转不同action
2014/04/24 Javascript
jquery datatable后台封装数据示例代码
2014/08/07 Javascript
在Ubuntu系统上安装Ghost博客平台的教程
2015/06/17 Javascript
JavaScript获取当前cpu使用率的方法
2015/12/15 Javascript
在AngularJS中如何使用谷歌地图把当前位置显示出来
2016/01/25 Javascript
1秒50万字!js实现关键词匹配
2016/08/01 Javascript
jQuery Validate格式验证功能实例代码(包括重名验证)
2017/07/18 jQuery
Vue实现双向绑定的原理以及响应式数据的方法
2018/07/02 Javascript
解决vuejs 使用value in list 循环遍历数组出现警告的问题
2018/09/26 Javascript
vue视图不更新情况详解
2019/05/16 Javascript
Vue.js实现tab切换效果
2019/07/24 Javascript
vuejs element table 表格添加行,修改,单独删除行,批量删除行操作
2020/07/18 Javascript
[01:56]《DOTA2》中文配音CG
2013/04/22 DOTA
Python学习_几种存取xls/xlsx文件的方法总结
2018/05/03 Python
详解关于Django中ORM数据库迁移的配置
2018/10/08 Python
python psutil模块使用方法解析
2019/08/01 Python
pyinstaller将含有多个py文件的python程序做成exe
2020/04/29 Python
python 实现单例模式的5种方法
2020/09/23 Python
通过案例解析python鸭子类型相关原理
2020/10/10 Python
selenium+python自动化78-autoit参数化与批量上传功能的实现
2021/03/04 Python
纯css3制作的火影忍者写轮眼开眼至轮回眼及进化过程实例
2014/11/11 HTML / CSS
用html5实现语音搜索框的方法
2014/03/18 HTML / CSS
使用phonegap播放音频的实现方法
2017/03/31 HTML / CSS
特罗佩亚包官方网站:Tropea
2017/01/03 全球购物
沃尔玛旗下墨西哥超市:Bodega Aurrera
2020/11/13 全球购物
Nike瑞士官网:Nike CH
2021/01/18 全球购物
授权委托书怎么写
2014/04/03 职场文书
2014年药品销售工作总结
2014/12/16 职场文书
庆六一开幕词
2015/01/29 职场文书
《极主夫道》真人电影正式预告 定档6月3日上映
2022/04/05 日漫
使用Cargo工具高效创建Rust项目
2022/08/14 Javascript