编辑浪子版表单验证类


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 相关文章推荐
初学prototype,发个JS接受URL参数的代码
Sep 25 Javascript
用javascript自动显示最后更新时间
Mar 15 Javascript
模仿JQuery.extend函数扩展自己对象的js代码
Dec 09 Javascript
理解Javascript_13_执行模型详解
Oct 20 Javascript
JavaScript高级程序设计(第3版)学习笔记10 再访js对象
Oct 11 Javascript
javascript教程:关于if简写语句优化的方法
May 17 Javascript
使用C++为node.js写扩展模块
Apr 22 Javascript
javascript操作ul中li的方法
May 14 Javascript
JS实现点击复选框将按钮或文本框变为灰色不可用的方法
Aug 11 Javascript
vue2.0 + ele的循环表单及验证字段方法
Sep 18 Javascript
小程序怎样让wx.navigateBack更好用的方法实现
Nov 01 Javascript
vue使用echarts实现折线图
Mar 21 Vue.js
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
虹吸壶是谁发明的?煮出来的咖啡好喝吗
2021/03/04 冲泡冲煮
PHP中使用CURL模拟登录并获取数据实例
2014/07/01 PHP
php $_SESSION会员登录实例分享
2021/01/19 PHP
php微信开发之音乐回复功能
2018/06/14 PHP
用JavaScript计算在UTF-8下存储字符串占用字节数
2013/08/08 Javascript
js冒泡、捕获事件及阻止冒泡方法详细总结
2014/05/08 Javascript
javascript实现连续赋值
2015/08/10 Javascript
jQuery编程中的一些核心方法简介
2015/08/14 Javascript
js实现碰撞检测特效代码分享
2016/10/16 Javascript
Angular和Vue双向数据绑定的实现原理(重点是vue的双向绑定)
2016/11/22 Javascript
bootstrap table配置参数例子
2017/01/05 Javascript
JavaScript制作简单的框选图表
2017/05/15 Javascript
Vue.js实例方法之生命周期详解
2017/07/03 Javascript
JS实现模糊查询带下拉匹配效果
2018/06/21 Javascript
JS使用Date对象实时显示当前系统时间简单示例
2018/08/23 Javascript
js如何获取图片url的Blob值并预览示例代码
2019/03/07 Javascript
python简单实现获取当前时间
2016/08/27 Python
mysql 之通过配置文件链接数据库
2017/08/12 Python
Python实现迭代时使用索引的方法示例
2018/06/05 Python
python3连接MySQL8.0的两种方式
2020/02/17 Python
python实现QQ邮箱发送邮件
2020/03/06 Python
PyCharm 2020 激活到 2100 年的教程
2020/03/25 Python
Python手动或自动协程操作方法解析
2020/06/22 Python
Python和Bash结合在一起的方法
2020/11/13 Python
pandas map(),apply(),applymap()区别解析
2021/02/24 Python
Html5游戏开发之乒乓Ping Pong游戏示例(三)
2013/01/21 HTML / CSS
Html5原生拖拽相关事件简介以及基础实现
2020/11/19 HTML / CSS
Woolworth官网:澳洲第一大超市
2017/06/25 全球购物
英国独特的时尚和生活方式品牌:JOY
2018/03/17 全球购物
澳大利亚儿童精品仓库:Goo & Co.
2019/06/20 全球购物
西部世纪面试题
2014/12/05 面试题
创业资金计划书
2014/02/06 职场文书
颁奖晚会主持词
2014/03/25 职场文书
简单的辞职信范文(2016最新版)
2015/05/12 职场文书
2016年学校党支部创先争优活动总结
2016/04/05 职场文书
疑《守望先锋2》A测截图泄露 或将推出新模式、新界面
2022/04/03 其他游戏