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

本文关键字:按钮 然后 启用 两秒钟 单击 | 更新日期: 2023-09-27 18:05:06

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

我想在javascript的OnClientClick中这样做,在运行OnClientClick之后,它将运行OnClick事件,然后再次启用按钮

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

在纯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 */); 
});

你可以使用这个函数:

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

然后声明这个函数:

function EnableTheButton() {
    // enable the button here
}

使用even键禁用该按钮,然后设置超时时间,在规定时间后重新启用该按钮:

<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);
    };
}

试试这个: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;
}

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

你可以最初设置你的控件为disabled: true或OnLoad你可以setDisabled(true)。这完全符合你的要求。然后你可以这样做:

clearTimeout(this.enableSaveButton);

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

相关文章: