jQuery исчезает в.submit()

Код ниже предназначен для предотвращения двойного клика и, похоже, работает. Это предотвращает двойную подачу данных, но fadeOut не выполняется. Кто-нибудь знает почему? После отправки кнопка отправки, если она нажата, приведет к выполнению fadeOut.

$("#form1").submit(function() { 
     $("#form1Submit").click(function(event){ 
         event.preventDefault();
         $("#form1Submit").fadeOut("slow"); 
     });
});

1 ответ

Затухание не выполняется, потому что при представлении #form1 событие click только тогда будет привязано к #form1submit, При первом нажатии кнопки отправки форма отправляется, а затем событие связывается. (Если форма просто выполняет обратную передачу, событие никогда не будет связано из-за обновления страницы)

Вы можете просто поменять местами submit а также clickПосле нажатия кнопки отправки кнопка исчезает, а затем продолжает отправку формы.

$("#form1Submit").click(function(event) {
    event.preventDefault();
    $(this).fadeOut("slow", function(){
        //Once button has faded, invoke the form submission
        $("#form1").submit();
    });
});
Другие вопросы по тегам