3

我有这行 jQuery,一旦触发事件,它就会禁用所有按钮。

$("button").attr("disabled", "disabled");

默认情况下禁用的按钮是灰色的,但我想知道是否有办法覆盖这种行为,使按钮被禁用,但没有向用户提示?

谢谢。

4

1 回答 1

4

通过 CSS:

button[disabled]一种解决方案是使用css 选择器为禁用和启用按钮设置相同的样式,如下所示:

button[disabled], button{
        color:#fff;
        border: none;
        background-color: grey;
    }

问题是浏览器默认有不同的按钮样式,所以你需要为你的按钮设置样式。

通过jQuery:

另一种解决方案是删除按钮的单击事件处理程序,因此替换此行:

$("button").attr("disabled", "disabled");

对于这个:

$('button').off('click');

要再次启用点击事件,请使用:

$('button').on('click');

更多关于添加/删除事件处理程序的信息,关于这个很好的答案

注意:您应该为按钮添加 id(如果您使用多个按钮),因为上面的代码将删除对所有按钮的点击。

于 2012-11-24T08:22:07.810 回答