Javascript 解除绑定内联onClick在jQuery中不起作用?

Javascript 解除绑定内联onClick在jQuery中不起作用?,javascript,jquery,Javascript,Jquery,好吧,我想知道如何在jQuery中解除内联onclick事件的绑定。你可能会想,解除绑定是可行的,但事实并非如此 要亲自测试这一点,请使用以下HTML和JavaScript: function UnbindTest() { $("#unbindTest").unbind('click'); } function BindTest() { $("#unbindTest").bind('click', function() { alert("bound!"); }); } &l

好吧,我想知道如何在jQuery中解除内联onclick事件的绑定。你可能会想,解除绑定是可行的,但事实并非如此

要亲自测试这一点,请使用以下HTML和JavaScript:

function UnbindTest() {
    $("#unbindTest").unbind('click');
}

function BindTest() {
    $("#unbindTest").bind('click', function() { alert("bound!"); });
}


<button type="button" onclick="javascript:UnbindTest();">Unbind Test</button>
<button type="button" onclick="javascript:BindTest();">Bind Test</button>
<button type="button" onclick="javascript:alert('unbind me!');" id="unbindTest">Unbind Button</button>
感谢您

取消绑定使用绑定注册的事件处理程序,而不是通过onclick或其他DOM0属性分配的事件处理程序。从文档中:

使用.bind附加的任何处理程序都可以使用.unbind删除


编辑:通过清除元素上的相关属性,可以解除DOM0处理程序的绑定。我不得不去查一下jQuery的方法:。

jQuery的取消绑定在onclick属性上不起作用-它只适用于通过绑定添加的函数,因此在$..数据“事件”中可用。您必须使用removeAttr删除onclick

阅读更多信息

$("#unbindTest").get(0).onclick = "";