1. 程式人生 > >jqueryValidator自定義校驗規則的一種方式(覆蓋源碼)

jqueryValidator自定義校驗規則的一種方式(覆蓋源碼)

至少 聯系電話 wem length 登錄密碼 密碼 tro [0 verify

1.自定義js文件:jqValid-extend.js

內容:

function setDefaultValidate(){
    $.extend(true, $.validator, {
            // 方法
            methods: {
                //手機號
                "verifyPhone": function (value, element) {
                    var mobile = /^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0-9]|17[0-9])\d{8}$/;
                    
return this.optional(element) || (mobile.test(value)); }, //固話,法人聯系電話 "verifyTel": function (value, element) { var mobile = /^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0-9]|17[0-9])\d{8}$/; var tel = /^0\d{2,3}-?\d{7,8}$/;
return this.optional(element) || (tel.test(value))||(mobile.test(value)); }, //銀行卡號 "verifyCashCard": function (value, element) { var reg =/^([\d]){16,30}$/; return this.optional(element) || (reg.test(value)); },
//郵箱 "verifyMail": function (value, element) { var mail = /^[a-z0-9._%-]+@([a-z0-9-]+\.)+[a-z]{2,4}$/; return this.optional(element) || (mail.test(value)); }, //登錄密碼 "verifyLoginPassword": function (value, element) { var regPwd= /^(?=.*\d.*\d)+(?=.*[a-z|A-Z]*.[a-z|A-Z]).{6,12}$/; return this.optional(element) || (regPwd.test(value)); }, //交易密碼,確認密碼 "verifyCashPassword": function (value, element) { var regPwd= /^([\d]){6}$/; return this.optional(element) || (regPwd.test(value)); }, //證件號碼 "verifyIDCode": function (value, element) { var reg= /^([a-z|A-Z|()|+|0-9]){1,28}$/; return this.optional(element) || (reg.test(value)); }, //驗證碼 "verifyVerifyCode": function (value, element) { var reg= /^([\d]){6}$/; return this.optional(element) || (reg.test(value)); }, //理顧工號 "verifyAdvisorID": function (value, element) { var reg= /^H\d{6}$/; return this.optional(element) || (reg.test(value)); }, //申請編號 "verifyApplyID": function (value, element) { var reg= /^([\d]){1,50}$/; return this.optional(element) || (reg.test(value)); }, //資質編號,產品備案編號 "verifyZizhiID": function (value, element) { var reg= /^[\w|a-z|A-Z|\d]{1,30}$/; return this.optional(element) || (reg.test(value)); }, //註冊資本 "verifyRegZiben": function (value, element) { var reg= /^\d{1,14}$/; return this.optional(element) || (reg.test(value)); }, //法人職務 "verifyLegalTitle": function (value, element) { var reg= /^[\u4e00-\u9fa5a-zA-Z]{1,30}$/; return this.optional(element) || (reg.test(value)); }, //郵編 "verifyMailCode": function (value, element) { var reg= /^\d{6}$/; return this.optional(element) || (reg.test(value)); }, //產品規模 "verifyProductScale": function (value, element) { var reg= /^\d{1,14}$/; return this.optional(element) || (reg.test(value)); }, //產品存續期 "verifyProductExpire": function (value, element) { var reg= /^\d{1,4}$/; return this.optional(element) || (reg.test(value)); }, //客戶編號 "verifyClientId": function (value, element) { var reg=/^\d{1,50}$/; return this.optional(element) || (reg.test(value)); }, //說明 "verifyDescription": function (value, element) { var reg=/^[A-Za-z\u4e00-\u9fa5]{1,300}$/; return this.optional(element) || (reg.test(value)); } }, // 根據規則添加 classRuleSettings: { required:{ required:true }, verifyPhone: { verifyPhone: true }, verifyTel: { verifyTel: true }, verifyMail: { verifyMail: true }, verifyLoginPassword: { verifyLoginPassword: true }, verifyCashPassword: { verifyCashPassword: true }, verifyIDCode: { verifyIDCode: true }, verifyVerifyCode: { verifyVerifyCode: true }, verifyAdvisorID: { verifyAdvisorID: true }, verifyApplyID: { verifyApplyID: true }, verifyZizhiID: { verifyZizhiID: true }, verifyRegZiben: { verifyRegZiben: true }, verifyLegalTitle: { verifyLegalTitle: true }, verifyMailCode: { verifyMailCode: true }, verifyProductScale: { verifyProductScale: true }, verifyProductExpire: { verifyProductExpire: true }, verifyClientId: { verifyClientId: true }, verifyDescription: { verifyDescription: true } }, // 方法默認提示信息 messages: { required: ‘不能為空!‘, verifyMobile: "請填寫正確的手機號!", verifyMail: "請填寫正確的郵箱!", verifyPassword: "6-12位,至少包含2個數字,2個字母!", verifyCode: "請填寫正確的證件號碼!", }, // 默認選項 defaults: { onkeyup: false, // 驗證規則 rules: { }, // 驗證失敗的信息 messages: { }, // 錯誤被包裹的標簽 errorElement: ‘span‘, // 忽略的元素 ignore: ‘‘, // 提交事件 submitHandler: function () { } } }); }

2.html標簽中使用校驗規則:

<li>
                <label>法人郵箱: </label>
                <input name="lawEmail" id="legalEmail" type="text" value="{{=it.lawEmail  }}" class="public_input2"
                       data-rule-verifyMail="true" data-msg-verifyMail="請輸入正確的郵箱!" maxlength="30">
</li>

jqueryValidator自定義校驗規則的一種方式(覆蓋源碼)