2016-09-28 34 views
-2

我知道這已被解決之前,但我可以使用一些澄清,也許更新。附加處理程序只有一次jquery

我有一個jQuery的處理程序,如:

$(document).on("submit", $(".validform"), function(e) { 

. . . . 

}); 

有似乎是一個問題,有時當表單元素被提交多次,它看起來像hanlder要麼射擊多次,或有多個實例正在射擊的經理人。

我嘗試過使用.one,並且一次有效,但之後不再發射。我想附加處理程序一次,並保持它連接,而不附加多個實例。這似乎是在這種情況下通常使用jQuery時可能會出現的問題。

謝謝。

+2

這個'$( 「validform 」)'應該是'「 .validform」' – guradio

+0

[jQuery的關閉(http://api.jquery.com/關/) –

+0

如何提交表單?你不能在觸發後隱藏提交按鈕嗎? –

回答

-1

這也許似乎工作:

$(document).on("submit", ".validform", function(e) { 

    e.preventDefault(); 
    var formdata = $(e.target).serialize(); 
    var rempass = $.post($(e.target).attr("action"), formdata); 
    rempass.done(function(data) { 
    // alert("test"); 
    $(".modal-body").html(data); 
    }); 
$(".validform").off(); 
}); 
+0

也許意味着,這是否工作。不要把可能的答案。如果它工作正常,然後放。 –

+0

一。作品,但它確實如此。它只發射一次。如果他們再次提交表單,則不會捕獲表單並按照慣例提交表單。 – sscotti

相關問題