好吧,所以我正在處理一個表單,它根據我設置的驗證規則測試特定的表單元素。我試圖根據.valid()
是否返回true
或false
將布爾變量hasError
設置爲true
或false
。我遇到的問題是由於某種原因,即使我的規則設置爲required: false
,用戶沒有在輸入中輸入數據,.valid()
也會返回false
。即使未輸入數據,也不應將規則設置爲required: false
以允許驗證通過?jQuery驗證所需的規則不起作用
這裏是我使用的代碼:
$.validator.addMethod("regex", function(value, element, regexp) {
var check = false;
var re = new RegExp(regexp);
return this.optional(element) || re.test(value);
},
"Please do not use any special characters"
);
$('#formElem').validate({
rules: {
testItem:{required: false, regex: /^[0-9A-Za-z\s`[email protected]$%^&*()+{}|;'",.<>\/?\\-]+$/}
}
});
var hasError = false;
if($('#testItem').valid()) {
hasError = false;
}else{
hasError = true;
}
你能發佈一個工作jsfiddle嗎? – jameslafferty
您應該顯示足夠的代碼來複制報告的問題。 – Sparky