0

单击后如何禁用按钮两秒钟然后再次启用?

我想在 JavaScript 中的 OnClientClick 中执行此操作,运行 OnClientClick 后它将运行 OnClick 事件,然后再次启用按钮

4

5 回答 5

2

用纯 javascript 做到这一点非常简单:

var btn = document.getElementById("myButton");
btn.onclick = function() {
    btn.disabled = true; // disable button
    window.setTimeout(function() {
       btn.disabled = false; // enable button
    }, 2000 /* 2 sec */); 
}; // Warning: this will replace existing onclick event

如果您使用的是jQuery,那么您可以使用以下代码:

var btn = $("#myButton");
btn.click(function() {
    btn.attr("disabled", "disabled"); // disable button
    window.setTimeout(function() {
       btn.removeAttr("disabled"); // enable button
    }, 2000 /* 2 sec */); 
});
于 2013-03-21T02:46:39.967 回答
0

您可以使用此功能:

//Disable the button here
setTimeout("EnableTheButton();", 2000); // put this inside the click event

然后声明这个函数:

function EnableTheButton() {
    // enable the button here
}
于 2013-03-21T02:46:44.583 回答
0

使用单击甚至禁用按钮,然后设置超时以在所需时间后重新启用它:

<button onclick="
  var button = this;
  this.disabled = true;

  // Put other listener code here

  window.setTimeout(function(){
    button.disabled = false;
  }, 2000);
">Button</button>

或动态附加:

window.onload = function() {

    document.getElementById('b0').onclick = function() {

      var button = this;
      button.disabled = true;

      // Put other listener code here

      window.setTimeout(function(){
        button.disabled = false;
      }, 2000);
    };
}
于 2013-03-21T02:52:24.677 回答
0

试试这个: HTML 页面:

<button id="myButon" onclick="disableButon();"></button>

javascript部分:

function disableButon()
{   
    var timer;
    document.getElementById('myButon').disabled = true;
    timer = setTimeout("activateButon()", minutes * 60000);
}

下一个功能启用:

function activateButon()
{
    document.getElementById('myButon').disabled = false;
}
于 2013-03-22T08:13:36.853 回答
-1

请参阅下面的代码片段以在 10000 毫秒(10 秒)后启用保存按钮

您最初可以将控件设置为禁用:true 或 OnLoad,您可以 setDisabled(true)。这绝对是您的要求。然后您可以执行以下方式:

clearTimeout(this.enableSaveButton);

this.enableSaveButton = setTimeout(function () {
if (Ext.getCmp('btn-Save'))
Ext.getCmp('btn-Save').setDisabled(false);
}, 10000);

于 2014-09-09T05:09:54.700 回答