ajax 请求成功后如何禁用 onclick 事件?

How can i disable onclick event after successful ajax request?

我想在 ajax 请求成功后禁用 onclick 事件

<div class="report_button" id="report_button" title="Reportthis" style="width:65px;height:15px;" onclick="reported_text(user_id,lead_id);">Report</div>

这是我的 div,我想在点击

后禁用 div
function reported_text(user_id,lead_id){
    new Ajax.Request("/agent/report/lead-refund",
    {
        method:"POST",
        parameters:"user_id=" + user_id + "&lead_id=" + lead_id ,
        onSuccess: function(transport){
            alert("Thank you for Response");
            jQuery('#report_button').attr("disabled", "disabled");
        },
        onFailure: function(transport){

            $('tag_error_status').innerHTML = '';
            alert("Unsuccessful request processing. This will be rectified soon.");
        }
    });
}

有什么办法可以做到这一点。这个 div 用于许多用户,我必须以这样的方式进行操作,以便它只对特定用户禁用。

 new Ajax.Request("/agent/report/lead-refund",
    {
        method:"POST",
        parameters:"user_id=" + user_id + "&lead_id=" + lead_id ,
        onSuccess: function(transport){
            alert("Thank you for Response");
            jQuery('#report_button').hide();
        },
        onFailure: function(transport){

            $('tag_error_status').innerHTML = '';
            alert("Unsuccessful request processing. This will be rectified soon.");
        }
    });

您可以使用隐藏功能...或者您可以使用 $("#report_button").attr("onclick","")

您可以像这样禁用点击:

document.getElementById("report_button").onmousedown = new function ("return false");

这是我找到这段代码的地方link

取决于您添加监听器的方式尝试适合的监听器: 如果您使用 $(document).on 则使用:

$(document).off("click", "#report_button");

如果你使用了 $("#report_button").on 然后使用:

$("#report_button").off

或者只使用:

$("#report_button").click(function(){ return false; });