Javascript 如何为具有“0”的元素解除绑定单击事件;onclick=xxx";?

Javascript 如何为具有“0”的元素解除绑定单击事件;onclick=xxx";?,javascript,jquery,Javascript,Jquery,如何为具有“onclick=xxx”的元素解除单击事件的绑定 请参见下面的我的代码: <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> <button id="a" onclick="a()">a</button> <button onclick="test()">t

如何为具有
“onclick=xxx”
的元素解除单击事件的绑定

请参见下面的我的代码:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<button id="a" onclick="a()">a</button>
<button onclick="test()">test</button>
<script type="text/javascript">
    function a(){
        alert('a');
    }
    function test(){
        // how can I remove the click function for #a?
        // code bellow not works
        $('#a').unbind('click');
    }
</script>

A.
测试
函数a(){
警报(“a”);
}
功能测试(){
//如何删除#a的单击功能?
//下面的代码不起作用
$('a')。解除绑定('click');
}
您应该使用:

$("#a").removeAttr("onclick");
或:

您应该使用:

$("#a").removeAttr("onclick");
或:

您只需使用从元素中删除
onclick
属性:

$('#a').prop('onclick', null);

你不应该像Milind Anantwar的回答中所说的那样使用removeAttr()`因为这在旧版本的IE中无法正常工作:

注意:在Internet Explorer 6、7或8中,使用
.removeAttr()
删除内联onclick事件处理程序无法达到预期效果

来源:

您只需使用从元素中删除
onclick
属性:

$('#a').prop('onclick', null);

你不应该像Milind Anantwar的回答中所说的那样使用removeAttr()`因为这在旧版本的IE中无法正常工作:

注意:在Internet Explorer 6、7或8中,使用
.removeAttr()
删除内联onclick事件处理程序无法达到预期效果

来源:


如何在jquery 1.4.2中执行此操作?@mingfish_004您可以使用
attr()
来执行此操作:
$('a').attr('onclick',null)。但是,您确实不应该使用jquery1.4.2;这是发布的。如何在jquery 1.4.2中执行?@mingfish_004您可以使用
attr()
来执行此操作:
$('#a').attr('onclick',null)。但是,您确实不应该使用jquery1.4.2;这是发布的。