如何在js中点击x次后禁用按钮?

时间:2013-04-02 18:33:35

标签: javascript events onclick

我尝试使用Javascript在点击x次后禁用按钮。为简单起见,我们现在说x = 2。我似乎无法让计数器增加。谢谢你的帮助!

var $ = function (id) {
    return document.getElementById(id);
}

window.onload = function () {
    coke.onclick = function(){
        var count =0;
        if (count >= 1)
        {
            coke.disabled = true;
        }
        else
            count++;
    };
}

“coke”是元素ID。如果我摆脱了if语句并且只有coke.disabled = true,当然它可以在一次点击后工作和禁用。我确信我缺少一个核心概念。 谢谢

2 个答案:

答案 0 :(得分:6)

这种情况正在发生,因为每次onclick事件被触发时,您的var count被分配为0,因此它在函数中永远不会大于或等于1。如果您在count函数之外初始化onclick var,它将按预期运行。

window.onload = function () {
   var count = 0;
   coke.onclick = function(){
       if (count >= 1)
       {
           coke.disabled = true;
       }
       else
           count++;
   };
}

答案 1 :(得分:1)

您需要在count函数的范围之外定义onclick

var $ = function (id) {
    return document.getElementById(id);
}
var count = 0;    // set initial count to 0
window.onload = function () {
    coke.onclick = function(){
        if (count >= 1)
        {
            coke.disabled = true;
        }
        else
            count++;
    };
}