PHPWPS

 找回密码
 立即加入

QQ登录

只需一步,快速开始

搜索
热搜: php discuz
查看: 7610|回复: 0

[JS] dwz扩展验证(增加自定义表单验证规则)

[复制链接]

280

主题

420

帖子

1970

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1970
发表于 2015-5-11 16:05:44 | 显示全部楼层 |阅读模式
用习惯了Validform的表单验证,用dwz的验证,总觉得有些不好使。下面直接说方法和公布代码
首先找到bin目录下的dwz.min.js核心js代码,搜索到if ($.validator)
你会发现下面已经有几条规则了。按照里面自带的几条规则,网上搜索下相关代码,差不多就可以增加一些新的验证规则了
部分已经写好的验证规则如下:
  1. // 字符验证         
  2. $.validator.addMethod("stringCheck", function(value, element) {
  3.     return this.optional(element) || /^[\u0391-\uFFE5\w]+$/.test(value);
  4. }, "只能包括中文字、英文字母、数字和下划线");

  5. // 中文字两个字节         
  6. $.validator.addMethod("byteRangeLength", function(value, element, param) {
  7.     var length = value.length;
  8.     for (var i = 0; i < value.length; i++) {
  9.         if (value.charCodeAt(i) > 127) {
  10.             length++;
  11.         }
  12.     }
  13.     return this.optional(element) || (length >= param[0] && length <= param[1]);
  14. }, "请确保输入的值在3-15个字节之间(一个中文字算2个字节)");

  15. // 手机号码验证         
  16. $.validator.addMethod("isMobile", function(value, element) {
  17.     var length = value.length;
  18.     var mobile = /^(((13[0-9]{1})|(15[0-9]{1})|(17[0-9]{1})|(18[0-9]{1}))+\d{8})$/;
  19.     return this.optional(element) || (length == 11 && mobile.test(value));
  20. }, "请正确填写您的手机号码");

  21. // 电话号码验证         
  22. $.validator.addMethod("isTel", function(value, element) {
  23.     var tel = /^\d{3,4}-?\d{7,9}$/; //电话号码格式010-12345678     
  24.     return this.optional(element) || (tel.test(value));
  25. }, "请正确填写您的电话号码");

  26. // 联系电话(手机/电话皆可)验证     
  27. $.validator.addMethod("isPhone", function(value, element) {
  28.     var length = value.length;
  29.     var mobile = /^(((13[0-9]{1})|(15[0-9]{1})|(17[0-9]{1})|(18[0-9]{1}))+\d{8})$/;
  30.     var tel = /^\d{3,4}-?\d{7,9}$/;
  31.     return this.optional(element) || (tel.test(value) || mobile.test(value));
  32. }, "请正确填写您的联系电话");

  33. // 邮政编码验证         
  34. $.validator.addMethod("isZipCode", function(value, element) {
  35.     var tel = /^[0-9]{6}$/;
  36.     return this.optional(element) || (tel.test(value));
  37. }, "请正确填写您的邮政编码");
复制代码



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

本版积分规则

QQ|小黑屋|手机版|Archiver|phpwps Inc. ( 鄂ICP备14011625号-1 )

GMT+8, 2025-5-4 18:02 , Processed in 0.055423 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表