jQuery禁用按钮不起作用
我曾经将事件绑定到我的按钮,如:
$("input[name=add]").live("click",function(){...});
但我有另一个function,使他们“启用”和“禁用”,如:
RefreshBox() { $("input[name=add]").each(function(){ if(...) $(this).attr("disabled","disabled"); else $(this).attr("disabled",""); }) }
但实际上它并不像我预期的那样有效。 按钮仍然可以点击,事件仍然可以顺利进行。
PS:jQuery 1.4.1浏览器:IE8,禁用按钮后仍可正常工作。 浏览器:Chrome,禁用按钮成功。
您将要使用prop函数而不是attr
:
$(this).prop("disabled", true);
和
$(this).prop("disabled", false);
编辑
OP正在使用jQuery pre 1.6.1,这就是为什么disabled
attr
工作不正常(对于较旧的IE)。 虽然prop
是disabled
首选,但1.6.1 attr
应该(并且确实)也可以。
尝试$("input[type=submit]").removeAttr("disabled");
启用按钮。
您可以使用以下命令将’disabled’属性设置为false:
$("input[name='add']").attr("disabled","disabled");