2012-07-02 66 views
0

我有一個表單,我通過AJAX提交。表格中包含許多字段,但我遇到的兩個問題是「電子郵件地址」和「確認郵件地址」。如果只有在這兩個字段完全相同的情況下才能提交表單,我希望它可以。需要注意的是,這兩種形式也不是必需的。所以如果他們都是空白的,他們應該能夠提交得很好。在提交AJAX表單前確認電子郵件地址

以下是我目前使用的代碼。我刪除了表單提交期間和之後發生的很多視覺效果,以保持其清潔。

$(function() { 

    $("#contact_form form").submit(function() { 
    var thistarget = this.target; 

    $("#contact_form form").validate({ 
    rules: { 
     emailaddress: "required", 
     confirmemailaddress: { 
     equalTo: "#emailaddress" 
      } 
     } 
    }); 
    return false; 

    $.ajax({ 

     type: this.method, 
     url: this.action, 
     data: $(this).serialize(), 

     success: function() { 
     alert ("success:"); 

     $('#contact_form').html("<div id='message'></div>"); 
     $('#message').html("<h2>Request Form Submitted!</h2>") 
     .append("<p>We will be in touch soon.</p>") 
     .hide() 
     .fadeIn(1500, function() { 
      $('#message').append("Thank you!"); 
     }); 

     } 


    }); 

    return false; 

    }); 
}); 

回答

2

只要刪除:EMAILADDRESS:「必需的」,如果你有一個規則,你將無法提交表格,除非你輸入一個電子郵件地址。

+0

當他們需要? – PachinSV

+0

電子郵件地址是完全可選的。他們可以不給我發電子郵件,但如果他們給我發電子郵件,我想確保它是正確的。 – jkupczak

+0

這就是爲什麼我告訴你只需刪除規則的必需部分。因爲如果你說一個字段是必需的,那麼你不能留下空白。 – PachinSV

-1

而是下面的代碼驗證使用..

if($('#emailaddress').val() == $('#confirmemailaddress').val()) 
{ 
do ajax code 
}else{ 
return false; 
}