2011-06-19 213 views
13

我有我的形式我通過jQuery的.submit()提交,不幸的是,當我這樣做時,它不會觸發驗證插件。如果我在表單中放置一個提交按鈕,它可以很好地工作。手動觸發jQuery驗證?

有沒有辦法手動觸發插件?

在此先感謝。

+2

也許jQuery ['trigger()'](http://api.jquery.com/trigger/)方法可能有用嗎? –

回答

25
$("#myButton").click(function(e) { 
    e.preventDefault(); 
    if($("#myform").valid()){ 
     // the form is valid, do something 
    } else{ 
     // the form is invalid 
    } 
}); 
+1

謝謝你,完美的作品。 – Mikkel

+0

不客氣!請考慮接受我的答案,如果它解決了你的問題。 :) – Shef

4

你可以試試這個:

$('#someForm').valid(); 

這也可以在提交處理程序進行:

$('#someForm').submit(function() { 
    if ($(this).valid()) { 

    } else { 

    } 
}); 
+0

如果沒有錯誤,我該如何提交它? – Mikkel

+0

@Mikkel,'.valid()'方法返回一個布爾值,指示表單是否有效。 –

4

您可以使用此

$(".selector").validate({ 
    submitHandler: function(form){ 
    form.submit(); 
    } 
}); 

這autosubmits它是形式有效,所以你.validate()而不是submit()