Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 解除绑定内联onClick在jQuery中不起作用?_Javascript_Jquery - Fatal编程技术网

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

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

好吧,我想知道如何在jQuery中解除内联onclick事件的绑定。您可能认为
.unbind()
可以工作,但实际上不行

要亲自测试这一点,请使用以下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>
感谢

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

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


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

jQuery的取消绑定在
onclick
属性上不起作用-它只适用于通过
bind
添加的函数,因此在
$(…).data('events')
中可用。您必须使用
removeAttr
来删除
onclick

阅读更多信息

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