2010-01-27 70 views
1

我使用Jquery表單驗證來驗證表單輸入數據。有一個如何在其他函數之前啓用Jquery表單驗證功能?

確認

支票

提交此表的 。 。

的代碼是:

<script type="text/javascript"> 
function Confirmation(){ 
    var answer = confirm("Do you really want to withdraw this amount of money from your account?") 
    if (answer){ 
     return true; 
    } 
    else{ 
     return false; 
    } 

} 
$(document).ready(function() { 
$("#withdraw").validate({ 
     rules: { 
     amount: { 
      required: true, 
      digits:true 


     } , 
     bank:{ 
      required:true, 

     }, 
     cardnumber1: { 
      required: true, 
      minlength:8 

     }, 
     cardnumber2:{ 
      required:true, 
      equalTo: "#cardnumber1" 
     }, 
      holder:{ 
      required:true, 
     } 
    } 
}) 
}); 
</script> 

我想Jquery的表單驗證是Confirmation()之前執行,該怎麼辦呢?

+0

是我的問題明確? – Steven 2010-01-27 02:35:39

+0

很清楚史蒂文.. – 2010-01-27 11:09:34

+0

爲什麼這標記爲CW? – 2010-01-27 11:09:57

回答

0

我看着documentation,並且有一個名爲submitHandler的選項,我認爲它允許您在提交表單之前但在驗證發生之後添加您的確認對話框。試試這個...

<script type="text/javascript"> 
$(document).ready(function() { 
    $("#withdraw").validate({ 
    submitHandler : function(form) { 
     if (confirm("Do you really want to withdraw this amount of money from your account?")) { 
     form.submit(); 
     } 
    }, 
    rules: { 
     amount: { 
     required: true, 
     digits:true 
     }, 
     bank:{ 
     required:true, 
     }, 
     cardnumber1: { 
     required: true, 
     minlength:8 
     }, 
     cardnumber2:{ 
     required:true, 
     equalTo: "#cardnumber1" 
     }, 
     holder:{ 
     required:true, 
     } 
    } 
    }) 
}); 
</script> 
0

史蒂芬,

您需要從表單中刪除onsubmit處理器,添加它的驗證插件的的submitHandler ...

$("#withdraw").validate({ 
     rules: { 
      amount: { 
      required: true, 
      digits:true 
        } 
      // .. other rules here 
       }, 
     submitHandler: function(form){ 
     if(Confirmation()) 
      form.submit(); 
    } 
})