编辑浪子版表单验证类


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 相关文章推荐
获取HTML DOM节点元素的方法的总结
Aug 21 Javascript
仅IE支持clearAttributes/mergeAttributes方法使用介绍
May 04 Javascript
jquery 倒计时效果实现秒杀思路
Sep 11 Javascript
js监听鼠标事件控制textarea输入字符串的个数
Sep 29 Javascript
node.js中的path.normalize方法使用说明
Dec 08 Javascript
基于insertBefore制作简单的循环插空效果
Sep 21 Javascript
微信小程序 简单教程实例详解
Jan 13 Javascript
JS实现旋转木马式图片轮播效果
Jan 18 Javascript
js实现旋转木马效果
Mar 17 Javascript
三分钟学会用ES7中的Async/Await进行异步编程
Jun 14 Javascript
js前端面试之同步与异步问题详解
Apr 03 Javascript
微信小程序可滑动月日历组件使用详解
Oct 21 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
给初学者的30条PHP最佳实践(荒野无灯)
2011/08/02 PHP
使用PHP生成二维码的方法汇总
2015/07/22 PHP
Laravel 5.5 的自定义验证对象/类示例代码详解
2017/08/29 PHP
PHP如何获取Cookie并实现模拟登录
2020/07/16 PHP
javascript编程起步(第四课)
2007/02/27 Javascript
js创建对象的几种常用方式小结(推荐)
2010/10/24 Javascript
不同编码的页面表单数据乱码问题解决方法
2015/02/15 Javascript
谈谈js中的prototype及prototype属性解释和常用方法
2015/11/25 Javascript
javascript学习指南之回调问题
2016/04/23 Javascript
javascript与jquery动态创建html元素示例
2016/07/25 Javascript
jQuery实现可移动选项的左右下拉列表示例
2016/12/26 Javascript
通过AngularJS实现图片上传及缩略图展示示例
2017/01/03 Javascript
如何正确理解javascript的模块化
2017/03/02 Javascript
详解Vue2 无限级分类(添加,删除,修改)
2017/03/07 Javascript
详解cordova打包成webapp的方法
2017/10/18 Javascript
p5.js入门教程之小球动画示例代码
2018/03/15 Javascript
vue实现页面滚动到底部刷新
2019/08/16 Javascript
JavaScript实现动态生成表格
2020/08/02 Javascript
vue 公共列表选择组件,引用Vant-UI的样式方式
2020/11/02 Javascript
解决VantUI popup 弹窗不弹出或无蒙层的问题
2020/11/03 Javascript
关于Js中new操作符的作用详解
2021/02/21 Javascript
[57:53]DOTA2上海特级锦标赛主赛事日 - 2 败者组第二轮#3OG VS VP
2016/03/03 DOTA
python实现扫描ip地址的小程序
2019/04/16 Python
python覆盖写入,追加写入的实例
2019/06/26 Python
python 使用raw socket进行TCP SYN扫描实例
2020/05/05 Python
class类在python中获取金融数据的实例方法
2020/12/10 Python
Python实现京东抢秒杀功能
2021/01/25 Python
英国性能汽车零件和发动机配件在线:Maxpeedingrods
2019/11/05 全球购物
Lookfantastic阿联酋官网:英国知名美妆护肤购物网站
2020/05/26 全球购物
打架检讨书100字
2014/01/19 职场文书
优良学风班总结材料
2014/02/08 职场文书
挂牌仪式策划方案
2014/05/18 职场文书
正科级干部考察材料
2014/05/29 职场文书
软环境建设心得体会
2014/09/09 职场文书
Python爬虫实战之爬取携程评论
2021/06/02 Python
python简单验证码识别的实现过程
2021/06/20 Python