编辑浪子版表单验证类


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 相关文章推荐
验证javascript中Object和Function的关系的三段简单代码
Jun 27 Javascript
js给dropdownlist添加选项的小例子
Mar 04 Javascript
div拖拽插件——JQ.MoveBox.js(自制JQ插件)
May 17 Javascript
做好七件事帮你提升jQuery的性能
Feb 06 Javascript
javascript跨域的4种方法和原理详解
Apr 08 Javascript
JS在可编辑的div中的光标位置插入内容的方法
Nov 20 Javascript
jQuery实现加入购物车飞入动画效果
Mar 14 Javascript
微信小程序使用第三方库Underscore.js步骤详解
Sep 27 Javascript
vue学习笔记之vue1.0和vue2.0的区别介绍
May 17 Javascript
vue 粒子特效的示例代码
Sep 19 Javascript
vue.js中ref及$refs的使用方法解析
Oct 08 Javascript
微信小程序点击顶部导航栏切换样式代码实例
Nov 12 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
不用iconv库的gb2312与utf-8的互换函数
2006/10/09 PHP
php xml文件操作代码(一)
2009/03/20 PHP
PHP MemCached 高级缓存应用代码
2010/08/05 PHP
PHP 图片上传代码
2011/09/13 PHP
php生成txt文件标题及内容的方法
2014/01/16 PHP
php实现的css文件背景图片下载器代码
2014/11/11 PHP
php使用CURL模拟GET与POST向微信接口提交及获取数据的方法
2016/09/23 PHP
关注jquery技巧提高jquery技能(前端开发必学)
2015/11/02 Javascript
分享12个非常实用的JavaScript小技巧
2016/05/11 Javascript
jquery设置css样式的多种方法(总结)
2017/02/21 Javascript
javascript 中事件冒泡和事件捕获机制的详解
2017/09/01 Javascript
vue监听scroll的坑的解决方法
2017/09/07 Javascript
小程序云开发如何实现图片上传及发表文字
2019/05/17 Javascript
Vue 实现简易多行滚动&quot;弹幕&quot;效果
2020/01/02 Javascript
taro 实现购物车逻辑的实例代码
2020/06/05 Javascript
vue-列表下详情的展开与折叠案例
2020/07/28 Javascript
解决await在forEach中不起作用的问题
2021/02/25 Javascript
Python的字典和列表的使用中一些需要注意的地方
2015/04/24 Python
python 寻找优化使成本函数最小的最优解的方法
2017/12/28 Python
python bmp转换为jpg 并删除原图的方法
2018/10/25 Python
python实现感知机线性分类模型示例代码
2019/06/02 Python
Tostadora意大利:定制T恤
2019/04/08 全球购物
菲律宾优惠券网站:MetroDeal
2019/04/12 全球购物
LG西班牙网上商店:Tienda LG Online Es
2019/07/30 全球购物
遗体告别仪式答谢词
2014/01/23 职场文书
2014国培学习感言
2014/03/05 职场文书
销售求职信范文
2014/05/26 职场文书
12.4全国法制宣传日活动方案
2014/11/02 职场文书
2014年银行员工工作总结
2014/11/12 职场文书
校本研修个人总结
2015/02/28 职场文书
物业工程部经理岗位职责
2015/04/09 职场文书
学校党员干部承诺书
2015/05/04 职场文书
反腐倡廉心得体会2016
2016/01/13 职场文书
CSS实现多个元素在盒子内两端对齐效果
2021/03/30 HTML / CSS
css背景和边框标签实例详解
2021/05/21 HTML / CSS
关于JavaScript 中 if包含逗号表达式
2021/11/27 Javascript