【问题标题】:Javascript disabling a button during requestsJavascript 在请求期间禁用按钮
【发布时间】:2013-05-30 19:51:47
【问题描述】:

我试图在请求期间暂时禁用页面上的“保存”按钮,以防止用户单击它两次。按照我在这里找到的建议,我把

elem.setAttribute("disabled","disabled")

onclick 方法的最开始,但它不起作用,我仍然可以非常快速地单击多次并导致在按钮被禁用之前发送多个请求。有人有什么建议吗?

【问题讨论】:

  • onMousedown 会更好吗?
  • 这是一个fiddle 我混合在一起的。我不能足够快地点击来调用它两次。您确定处理程序是问题的实际原因吗?

标签: javascript html httprequest


【解决方案1】:

尝试使用元素属性而不是其属性

elem.disabled = true;

【讨论】:

    【解决方案2】:

    onclick 方法也可以做到这一点。除了禁用按钮。

    if (inclick) return;
    inclick = true;
    
    ... handle the entire click work ...
    
    inclick = false;
    

    请务必在世界开始时默认inclick = false;

    这将确保忽略任何快速点击。 (这是一种“去抖动”效果。)

    【讨论】:

      【解决方案3】:

      喜欢这个

      elem.attr("disabled", "disabled");
      
      $("#idButton").attr("disabled", "disabled");
      

      你能帮忙吗?

      Disabling a submit button after one click

      http://jsfiddle.net/V7B3T/12/

      【讨论】:

      • 哪里提到了jquery?
      猜你喜欢
      • 2018-03-19
      • 2011-06-05
      • 1970-01-01
      • 2018-10-30
      • 1970-01-01
      • 1970-01-01
      • 2019-01-28
      • 1970-01-01
      相关资源
      最近更新 更多