Kev*_*nce 31 recursion jquery jquery-ui
我点击LI时试图选择一个收音机盒.但我得到错误"很多递归".
代码是:
$('li').click( function(){
$('li.selected').removeClass('selected');
$(this).addClass('selected');
$(this).children("input[type=radio]").click();
});
Run Code Online (Sandbox Code Playgroud)
这是使用jQuery 1.4.2和UI 1.7.2.
Mig*_*tyE 32
当你.click()孩子时input
,事件会冒泡并重新触发li
点击().你需要一个.点击()添加到input
做event.preventBubble=true;
它,要不然刚才设置的检查属性,而不是click()
荷兰国际集团它.
nau*_*tur 11
是的,这是冒泡的事件.活动泡到李
你必须这样做:
$('li').click( function(e){
if($(e.target).is('li')){
$('li.selected').removeClass('selected');
$(this).addClass('selected');
$(this).children("input[type=radio]").click();
}
});
Run Code Online (Sandbox Code Playgroud)
不要在下面添加更多活动,这很麻烦