我曾经将事件绑定到我的按钮,如:
$("input[name=add]").live("click",function(){...});
Run Code Online (Sandbox Code Playgroud)
但我有另一个功能,使他们"启用"和"禁用",如:
RefreshBox() {
$("input[name=add]").each(function(){
if(...)
$(this).attr("disabled","disabled");
else
$(this).attr("disabled","");
})
}
Run Code Online (Sandbox Code Playgroud)
但实际上它并没有像我预期的那样发挥作用.按钮仍然可以点击,事件仍然可以顺利进行.
PS:jQuery 1.4.1浏览器:IE8,禁用按钮后仍然可以正常工作.浏览器:Chrome,禁用按钮成功.
Ada*_*kis 44
您将要使用prop函数而不是attr:
$(this).prop("disabled", true);
Run Code Online (Sandbox Code Playgroud)
和
$(this).prop("disabled", false);
Run Code Online (Sandbox Code Playgroud)
编辑
OP是使用jQuery 1.6.1前,这就是为什么attr对于disabled不工作很正确(较旧IE).虽然prop是首选disabled,但1.6.1后attr应该(并且确实)也可以.
| 归档时间: |
|
| 查看次数: |
41208 次 |
| 最近记录: |