jquery中 label 的 click事件执行两次

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jquery中 label 的 click事件执行两次相关的知识,希望对你有一定的参考价值。

<label class="radio" data-name="chooseAType"><input name="atype" value="0" type="radio"/>点击</label>
如果我给 外层的label 定义一个click事件:$('label.radio').click(function()alert('label click'););
表现为:IE下,执行1次;FF下,执行2次;
FF下,如果里面没有radio input,就不会执行2次;

于是我改成,去掉外层label的click事件,给内层得radio定义事件:$(‘input[name="atype"]').click(function()alert('input click'););
表现为:IE下,除非我有代码执行$(‘input[name="atype"]').click();会执行外,页面上的手动鼠标点击是无响应的。FF下,就反应正常。

请问是为啥?谢谢

参考技术A 试试这个
$('label.radio').die('click').live('click',function()alert('label click'););

参考技术B 用$('label.radio').unbind("click").click(function()alert('label click'););
在click之前加个.unbind("click")

以上是关于jquery中 label 的 click事件执行两次的主要内容,如果未能解决你的问题,请参考以下文章

jquery中click事件的累加绑定,点击一次,执行多次

jquery双击事件(dblclick)时,不触发单击事件(click)

JQuery中的click重复执行现象

jquery为啥触发多次click事件

Vba中窗体部件点击事件?

怎么让click事件在指定时间内只响应一次,jquery。