Отключение кнопки формы во время работы ajax - PullRequest
0 голосов
/ 07 декабря 2018

Я знаю, что этот вопрос задавался ранее, но ни одно из решений не помогло мне, и я проверяю множество других мест

Я отправляю форму с ajax

проблема в том, когдаСтраница действий PHP запускается, это занимает некоторое время, и похоже, что ничего не происходило, когда кнопка была нажата, поэтому я хочу, чтобы кнопка была отключена, когда страница действий запущена

, вот ajax

$(document).ready(function() {
$("form[name ='signup']").submit(function(event) {
    $('.form-group').removeClass('has-error');
    $('.help-block').remove();
    var formData = {
        'uname'             : $('input[name=uname]').val(),
        'email'             : $('input[name=email]').val(),
        'utype'             : $('select[name=utype]').val(),
        'pwd'               : $('input[name=pwd]').val(),
        'pwd_rp'            : $('input[name=pwd_rp]').val()
    };
    $.ajax({
        type        : 'POST',
        url         : 'includes/signin_action_page.inc.php',
        data        : formData,
        dataType    : 'json',
        encode      : true
    })
        .done(function(data) {
            console.log(data); 
            if ( ! data.success) {
                if (data.errors.uname) {
                    $('#uname-group').addClass('has-error');
                    $('#uname-group').append('<div class="help-block">' +         
                    data.errors.uname + '</div>');
                }


                if (data.errors.email) {
                    $('#email-group').addClass('has-error');
                    $('#email-group').append('<div class="help-block">' + 
                    data.errors.email + '</div>');
                }


                if (data.errors.utype) {
                    $('#utype-group').addClass('has-error');
                    $('#utype-group').append('<div class="help-block">' + 
                    data.errors.utype + '</div>');
                }


                if (data.errors.pwd) {
                    $('#pwd-group').addClass('has-error');
                    $('#pwd-group').append('<div class="help-block">' + 
                    data.errors.pwd + '</div>');
                }


                if (data.errors.pwd_rp) {
                    $('#pwd_rp-group').addClass('has-error');
                    $('#pwd_rp-group').append('<div class="help-block">' + 
                    data.errors.pwd_rp + '</div>');
                }

                if (data.errors.unamechk) {
                    $("form[name ='signup']").append('<div class="alert 
                    alert-info alert-dismissible"><a href="#" class="close" 
                    data-dismiss="alert" 
                    aria-label="close">&times;</a>' + data.errors.unamechk + 
                '</div> ');
                }

                if (data.errors.emailchk) {
                    $("form[name ='signup']").append('<div class="alert 
                    alert-info alert-dismissible"><a href="#" class="close" 
                    data-dismiss="alert" 
                    aria-label="close">&times;</a>' + data.errors.emailchk + 
                   '</div> ');
                } 
                if (data.errors.emailverification) {
                    $("form[name ='signup']").append('<div class="alert 
                    alert-warning alert-dismissible"><a href="#" 
                    class="close" data- 
                    dismiss="alert" aria-label="close">&times;</a>' + 
                    data.errors.emailverification + '</div> ');
                } 

            } else {

                $("form[name ='signup']").append('<div class="alert alert- 
                  success alert-dismissible"><a href="#" class="close" data- 
                  dismiss="alert" 
                  aria-label="close">&times;</a>' + data.message + 
                  '</div>');


            }
        })
        .fail(function(data) {

            console.log(data);
        });
    event.preventDefault();
});

});

я попробовал этот метод, но он не работает

$('#signup_submit').attr("disabled", true);

имя кнопки 'signup_submit'

...