如何使用JavaScript或jQuery启用按钮
我能够成功禁用具有以下语法的按钮如何使用JavaScript或jQuery启用按钮,javascript,jquery,Javascript,Jquery,我能够成功禁用具有以下语法的按钮 $("#list *").attr("disabled", "disabled").off('click'); 但是,我还需要启用函数末尾的按钮。请在此帮助我如何执行此操作。不要使用该属性禁用该字段。使用DOM元素的属性。要禁用: $("#list *").prop("disabled", true); 要重新启用: $("#list *").prop("disabled", false); 不要使用该属性来禁用该字段。使用DOM元素的属性。要禁用: $(
$("#list *").attr("disabled", "disabled").off('click');
但是,我还需要启用函数末尾的按钮。请在此帮助我如何执行此操作。不要使用该属性禁用该字段。使用DOM元素的属性。要禁用:
$("#list *").prop("disabled", true);
要重新启用:
$("#list *").prop("disabled", false);
不要使用该属性来禁用该字段。使用DOM元素的属性。要禁用:
$("#list *").prop("disabled", true);
要重新启用:
$("#list *").prop("disabled", false);
该方法将删除附加的事件处理程序
如果在禁用按钮时删除事件处理程序,即使稍后启用它,它也不再具有事件处理程序,因此单击它将不会触发以前具有的任何功能。否则,在启用事件处理程序后,还必须重新绑定它
简单地禁用按钮将使其无法工作,您根本不必删除单击
处理程序
您可以使用$(“#list*”).prop(“disabled”,true)禁用按钮
并使用$(“#list*”).prop(“disabled”,false)启用它代码>如他的
该方法将删除附加的事件处理程序
如果在禁用按钮时删除事件处理程序,即使稍后启用它,它也不再具有事件处理程序,因此单击它将不会触发以前具有的任何功能。否则,在启用事件处理程序后,还必须重新绑定它
简单地禁用按钮将使其无法工作,您根本不必删除单击
处理程序
您可以使用$(“#list*”).prop(“disabled”,true)禁用按钮
并使用$(“#list*”).prop(“disabled”,false)启用它代码>如他的中所述,尝试完全删除禁用
属性
$(“#列表”).removeAttr('disabled')代码>
更新
还有一件事,将disabled
设置为true、false、undefined
等不会起任何作用。您可以通过简单地向元素添加disable
属性(不传递任何内容)来检查这一点,并将其永久禁用
更新2
如上所述,下面的fiddle描述了在disable属性中传递“true、false、undefined”的影响
尝试完全删除禁用属性
$(“#列表”).removeAttr('disabled')代码>
更新
还有一件事,将disabled
设置为true、false、undefined
等不会起任何作用。您可以通过简单地向元素添加disable
属性(不传递任何内容)来检查这一点,并将其永久禁用
更新2
如上所述,下面的fiddle描述了在disable属性中传递“true、false、undefined”的影响
请参阅以了解如何使用on和off事件,以及禁用属性后为什么需要off()?没有必要…删除.off(“单击”)
,这样只有属性(“禁用”、“禁用”)
存在。要重新启用doremoveAttr(“已禁用”)
。这是一个可怕的选择器,顺便说一句,执行类似于$(“#列表按钮”)
$(..)的操作。prop('disabled',false)
您应该提供一个JS提琴。人们正确地回答了你的问题,但有一个问题超出了我们所看到的范围。如果您发布一个fiddle,我们可以为您提供帮助。有关使用on和off事件的信息,请参阅,另外,当您禁用了属性时,为什么需要off()?没有必要…删除.off(“单击”)
,这样只有属性(“禁用”、“禁用”)
存在。要重新启用doremoveAttr(“已禁用”)
。这是一个可怕的选择器,顺便说一句,执行类似于$(“#列表按钮”)
$(..)的操作。prop('disabled',false)
您应该提供一个JS提琴。人们正确地回答了你的问题,但有一个问题超出了我们所看到的范围。如果您发布了一个提琴,我们可以帮助您。OP可能还需要重新绑定单击处理程序:D可能OP也需要重新绑定单击处理程序:D“将disabled设置为true、false、undefined等没有任何作用”-完全错误。@TJ您为什么这么认为?我加了一把小提琴来说明我的意思。上面引用的说法是错误的。检查将禁用
设置为真
和假
的其他答案。顺便说一句,attr
不是更改属性值的首选方法…“将disabled设置为true、false、undefined等不会有任何作用”-完全错误。@TJ为什么这样认为?我加了一把小提琴来说明我的意思。上面引用的说法是错误的。检查将禁用
设置为真
和假
的其他答案。顺便说一句,attr
不是更改属性值的首选方法。。。