如何检查ajax请求是否来自按钮

时间:2018-06-15 12:41:48

标签: javascript jquery html ajax

我正在处理ajax请求时禁用所有按钮,并在ajax进程完成并成功时启用它们。现在我的问题是......如何检查ajax请求是否来自特定元素,在这种情况下是一个按钮?

到目前为止,这是我的代码:

$(document).ajaxSend(function(){
    if(ajax request comes from a button) {
        $(':button').prop('disabled', true);
    }
});

$(document).ajaxComplete(function () {
    errorCount = 0;
    $(':button').prop('disabled', false);
});

任何建议都会非常贴切:)谢谢大家!

2 个答案:

答案 0 :(得分:0)

您可以尝试这样:

$(document).ajaxSend(function(sender){
    if(sender.tagName == 'button') {
        $(sender).prop('disabled', true);
    }
});

答案 1 :(得分:0)

在精简研究和使用提供的建议之后,我想出了解决方案,现在这是我的代码并且正在工作:

$(document).on('click', 'button', function () {
        var $this = $(this);
        $(document).ajaxSend(function(){
            $this.prop('disabled', true);
        });
$(document).ajaxComplete(function () {
    $this.prop('disabled', false);
});