小编典典

在AJAX请求时禁用按钮

ajax

我试图在单击按钮后禁用它。我努力了:

$("#ajaxStart").click(function() {
    $("#ajaxStart").attr("disabled", true);
    $.ajax({
      url: 'http://localhost:8080/jQueryTest/test.json',
      data: {
        action: 'viewRekonInfo'
      },
      type: 'post',
      success: function(response){
        //success process here                             
        $("#alertContainer").delay(1000).fadeOut(800);
       },
      error: errorhandler,
      dataType: 'json'
    });    
    $("#ajaxStart").attr("disabled", false);
});

但该按钮并未被禁用。当我删除$("#ajaxStart").attr("disabled", false); 按钮被禁用。

虽然这没有按预期工作,但我认为代码顺序是正确的。任何帮助将不胜感激。


阅读 325

收藏
2020-07-26

共1个答案

小编典典

放入$("#ajaxStart").attr("disabled", false);成功函数:

$("#ajaxStart").click(function() {
    $("#ajaxStart").attr("disabled", true);
    $.ajax({
        url: 'http://localhost:8080/jQueryTest/test.json',
        data: { 
            action: 'viewRekonInfo'
        },
        type: 'post',
        success: function(response){
            //success process here
            $("#alertContainer").delay(1000).fadeOut(800);

            $("#ajaxStart").attr("disabled", false);
        },
        error: errorhandler,
        dataType: 'json'
    });
});

这将确保 加载数据 后将 disable设置为false 。当前,您在同一单击功能(即同时)中禁用和启用按钮。

2020-07-26