2010-07-23 34 views
10

如上所述,如何使用jQuery Validate從表單中刪除所有必需的規則?如何從jQuery Validate中的所有表單輸入中刪除'required'規則?

這是我目前:

var settings = $('form').validate().settings; 

//alert(settings.rules.toSource()); 
for (var i in settings.rules){ 
    alert(i); 
    delete settings.rules.i; 
    //^not sure about how to do this properly, 
    // and how to just delete the 'required' rule and keep the rest intact 
} 

功能原產於jQuery驗證返回一個未定義的錯誤:

$("input, select, textarea").rules('remove','required'); 
+0

使用$(this).removeClass('required') – 2010-07-23 11:59:41

+0

@Amit由於驗證設置沒有從輸入類運行,因此不起作用。 – bcmcfc 2010-07-23 12:02:59

+0

你能告訴我們爲什麼你想這樣做嗎? – Nealv 2010-07-23 12:07:42

回答

4

因爲有時可以的話,我似乎無意中發現了答案就在這裏張貼後。

for (var i in settings.rules){ 
    delete settings.rules[i].required; 
} 

工程。

13

如果你不想惹驗證的內部設置,你可以以這種方式使用的公共職能:

$('input, select, textarea').each(function() { 
    $(this).rules('remove', 'required'); 
}); 

注意,而忽略了第二個參數(必需)將刪除所有規則,而不僅僅是「必需的」。

相關問題