0

AJAX を介して送信するフォームがあります。フォームには多くのフィールドが含まれていますが、私が問題を抱えているのは「emailaddress」と「confirmemailaddress」の 2 つです。これらの 2 つのフィールドが同一である場合にのみフォームを送信できるようにしてください。注意点として、これら 2 つのフォームも必須ではありません。したがって、両方が空白の場合は、問題なく送信できるはずです。

ここに私がこれまでに取り組んでいるコードがあります。フォームをきれいに保つために、フォームの送信中および送信後に発生する多くの視覚効果を削除しました。

$(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;  

  });
});
4

2 に答える 2

2

削除するだけです: emailaddress: "required"。そのルールがある場合、メール アドレスを入力しないとフォームを送信できません。

于 2012-07-02T14:33:00.350 に答える
-1

バリデーターの代わりに以下のコードを使用してください。

if( $('#emailaddress').val() == $('#confirmemailaddress').val() ) 
{
do ajax code
}else{
return false;
}
于 2012-07-02T14:36:57.337 に答える