2014-10-01 71 views
0

我有一個簡單的表格與jQuery和PHPJquery/php表單必須單擊提交兩次爲什麼?

只要有人點擊提交按鈕,他們必須點擊它兩次

繼承人我的jQuery

$('#submit_btn').on('click', function(){ 
     var post_data, proceed, user_email, user_message, user_name, user_phone; 

     user_name = $("input[name=name]").val(); 
     user_email = $("input[name=email]").val(); 
     user_phone = $("input[name=phone]").val(); 
     user_message = $("textarea[name=message]").val(); 
     proceed = true; 
     if (user_name === "") { 
     $("input[name=name]").css("border-color", "red"); 
     proceed = false; 
     } 
     if (user_email === "") { 
     $("input[name=email]").css("border-color", "red"); 
     proceed = false; 
     } 
     if (user_phone === "") { 
     $("input[name=phone]").css("border-color", "red"); 
     proceed = false; 
     } 
     if (user_message === "") { 
     $("textarea[name=message]").css("border-color", "red"); 
     proceed = false; 
     } 
     if (proceed) { 
     post_data = { 
      userName: user_name, 
      userEmail: user_email, 
      userPhone: user_phone, 
      userMessage: user_message 
     }; 
     $.post("contact_me_test.php", post_data, (function(response) { 
      var output; 
      if (response.type === "error") { 
      output = "<div class=\"error\">" + response.text + "</div>"; 
      } else { 
      output = "<div class=\"success\">" + response.text + "</div>"; 
      $('#contact-form-container').fadeOut(function(e){ 
       $('#form-success-message').fadeIn(); 
      }); 
      $("#contact_form input").val(""); 
      $("#contact_form textarea").val(""); 
      } 
      $("#result").hide().html(output).slideDown(); 
     }), "json"); 
     } 
    }); 

繼承人我的jQuery

有需要在這裏按兩次的東西?我在網上瀏覽了幾個小時,有些人說你需要從中驗證,但我已經嘗試過,並且得到了相同的結果。

有關工作正常,唯一的形式,一切是你必須點擊兩次

+2

我不知道了'返回FALSE'或'e.preventDefault( )'是。 – loveNoHate 2014-10-01 20:24:12

+0

@DOCASAREL對不起,我在後來嘗試修復基於我在線 – user1502223 2014-10-01 20:25:02

+0

上讀取的內容的問題,可能是按鈕默認操作的問題?嘗試在你的函數中傳遞事件並阻止默認值。 – ksealey 2014-10-01 20:25:09

回答

0

嘗試使用此代碼:

$('#submit_btn').on('click', function(evt){ 
    evt.preventDefault(); 
    ... //Rest of code 
} 
+0

沒有工作....我仍然需要點擊兩次後點擊處理器 – user1502223 2014-10-01 20:27:50

+0

你能告訴我一個關於你如何做的例子 – user1502223 2014-10-01 20:36:25