具体化禁用按钮不能在jquery ajax

时间:2016-11-04 00:46:25

标签: jquery ajax button materialize

,我正在试图在物化时禁用一个按钮,当它被点击时....但它对我不起作用,关于我的ajax请求的成功函数它必须从这个框架中添加类禁用...但没有发生了,并且ajax请求它工作正常!! ...请帮助!!

$(document).on('click', '.aprove , .disapprove', function() {
    if (sesion != "") {
        if ($(this).attr('class').split(' ').pop() == 'aprove_president') {

            var id = $(this).closest("div .col .s6").find('input[type=hidden]').attr('id');
            alert(id);
            var data = {

                'id_politic' : id,
                'sesion'     : sesion,
                'status'     : 1
            }

            $.ajax({
                url: baseurl+'result/aprove',
                type: 'POST',
                data: data
            })
            .done(function() {
                $(this).addClass('disabled');
            })
            .fail(function() {
                console.log("error");
            })
            .always(function() {
                console.log("complete");
            });

        }
        else if ($(this).attr('class').split(' ').pop() == 'disapprove_president') {

        }

    }
    else {
        $('#verification').openModal();
    }
});

1 个答案:

答案 0 :(得分:1)

$(this)匿名函数中的

done在不同的范围内。因此,它不是你的按钮。

您可能希望这样做,

$(document).on('click', '.aprove , .disapprove', function() {
    var $btn = $(this);

并在您的done中重复使用

.done(function() {
   $btn.addClass('disabled');
})