2014-02-18 18 views
0

我有一個註冊表單供多人註冊。在我提交()jQuery函數,我要檢查每一個電子郵件地址,其對應確認的電子郵件地址相匹配:在jQuery中添加一個條件submit()函數

jQuery('[name="email_address\\[\\]"]').each(function(){ 
    var email = jQuery(this).val(); 
    var confirmation_email = jQuery(this).parents('.section').next('.section').children('input.confirm_email').val(); 
    if (email != confirmation_email) { 
     alert("At least one email address does't match confirmation email address. Please check all email addresses"); 
     return false; 
    } 
}); 

問題是,在return false只打斷了我的each()功能,而不是submit()功能的執行。如何從each()函數中斷submit()函數執行?

回答

3

聲明each之外的某個變量,並在電子郵件不相等的情況下將false賦值給它。然後返回這個變量

var emailCorrect = true; 

jQuery('[name="email_address\\[\\]"]').each(function(){ 
    var email = jQuery(this).val(); 
    var confirmation_email = jQuery(this) 
          .parents('.section') 
          .next('.section') 
          .children('input.confirm_email') 
          .val(); 
    if (email != confirmation_email) { 
     alert("At least one email address does't match confirmation email address. Please check all email addresses"); 
     emailCorrect= false; 
    } 
}); 

return emailCorrect;