Javascript attr(';disabled';,true)与unbind(';click';)之间的差异

Javascript attr(';disabled';,true)与unbind(';click';)之间的差异,javascript,jquery,Javascript,Jquery,我需要在单击持续时间和响应到达之间禁用一个按钮。我的目标是,如果有人在响应到达之前再次单击按钮,则停止执行onclick函数 在这种情况下,哪一项是正确的功能 $('#mybutton').unbind('click'); $('#mybutton').attr('disabled', true); 更合适的做法是删除onclick。禁用该字段并不等同:浏览器可能会向其添加样式,并且/或者在表单提交时不将其包含在表单提交中 您还可能发现,即使按钮被禁用,onclick事件也会激发 $('#my

我需要在单击持续时间和响应到达之间禁用一个按钮。我的目标是,如果有人在响应到达之前再次单击按钮,则停止执行onclick函数

在这种情况下,哪一项是正确的功能

$('#mybutton').unbind('click');
$('#mybutton').attr('disabled', true);

更合适的做法是删除
onclick
。禁用该字段并不等同:浏览器可能会向其添加样式,并且/或者在表单提交时不将其包含在表单提交中

您还可能发现,即使按钮被禁用,onclick事件也会激发

$('#mybutton').unbind('click');
函数从所选元素中删除onClick事件处理程序

$('#mybutton').attr('disabled', true);
此代码为所选元素设置一个
禁用的
属性。禁用的按钮无法单击,并且通常样式不同

禁止用户单击按钮的首选方法是将其禁用。如果某些条件发生更改,并且希望使其可单击,则可以删除此属性,而无需再次附加onClick事件

$(".myButton").prop("disabled", true);
$(".myCheckbox").click(function() {
  $(".myButton").prop("disabled", false);
});

要获得更好的用户体验,必须禁用按钮(可选地,按钮文本可以随不同样式一起更改),仅删除
onclick
事件不能提供良好的用户体验,因为用户仍然可以单击按钮,而不会产生任何影响。不一定要遵循,但它可以是一种方法:删除
onclick
(格外小心),然后禁用按钮。

一种是不允许用户单击按钮。另一种是从按钮中删除单击事件,因此如何删除onclick事件
unbind('click')
将被删除(又称
unbind
)元素单击事件。您可以将禁用视为一种样式更改,因此它不会真正影响元素的基本行为。禁用不会影响回调的原因是:它改变了元素的核心行为。您是否尝试过关闭()?