天天看點

jquery.validate.js的一些問題

1、jquery.validate.js預設不對隐藏域進行驗證

若要對隐藏域驗證,需要加上 ignore  屬性

例:<input id="houseSellLicense" name="houseSellLicense" type="hidden">

// 表單驗證

$("#form").validate({

    ignore:''

});

2、常用驗證

(1)required:true              必輸字段

(2)remote:”check.PHP”         使用ajax方法調用check.php驗證輸入值

(3)email:true                 必須輸入正确格式的電子郵件

(4)url:true                   必須輸入正确格式的網址

(5)date:true                  必須輸入正确格式的日期

(6)dateISO:true               必須輸入正确格式的日期(ISO),例如:2009-06-23,1998/01/22 隻驗證格式,不驗證有效性

(7)number:true                必須輸入合法的數字(負數,小數)

(8)digits:true                必須輸入整數

(9)creditcard:                必須輸入合法的信用卡号

(10)equalTo:”#field”          輸入值必須和#field相同

(11)accept:                   輸入擁有合法字尾名的字元串(上傳檔案的字尾)

(12)maxlength:5               輸入長度最多是5的字元串(漢字算一個字元)

(13)minlength:10              輸入長度最小是10的字元串(漢字算一個字元)

(14)rangelength:[5,10]        輸入長度必須介于 5 和 10 之間的字元串”)(漢字算一個字元)

(15)range:[5,10]              輸入值必須介于 5 和 10 之間

(16)max:5                     輸入值不能大于5

(17)min:10                    輸入值不能小于10

3、增加自定義驗證

$.validator.addMethod("mobile", function(value, element) {

     return this.optional(element) || /^1\d{10}$/.test(value);

}, "Please enter a valid mobile number");

$.validator.addMethod("zipCode", function(value, element) {

     return this.optional(element) || /^\d{6}$/.test(value);

 }, "The zip code is invalid");

4、同背景關聯的驗證

//表單驗證

$("#generalizePersonForm").validate({

    rules: {

        generalizeCode: {

            remote: {

                url: "${base}/admin/generalizePerson/checkGeneralizeCode",

                type: "get",               

                dataType: "json",           

                data: {                     

                    generalizeCode: function() {

                        return $("#generalizeCode").val();

                    }

                }

            }

        }

    },

    messages: {

        generalizeCode: {

            remote: "推廣碼已存在"

        }

    }

})

@GetMapping("/checkGeneralizeCode")

@ResponseBody

public  boolean checkGeneralizeCode(String generalizeCode) {

   boolean result =  true;

   GeneralizePerson generalizePerson = generalizePersonService.getGeneralizeCode(generalizeCode);

   if(generalizePerson != null){

     result = false;

   }

   return result;

}

注意:背景傳回為true或者false,隻有傳回false時才會有提示