2015-06-09 25 views
4

内点击我有一些对象无序列表,当你点击一个<li>列表将减少,当你再次点击它就会膨胀。我使用jQuery UI的API上Accordion,问题是,我对我<li>内复选框不工作。我不可能让它起作用,并且没有任何“层”。复选框未手风琴列表

我试着给复选框position:absolute; z-index: 1000000000,但没有结果。我也尝试过创建函数来更新点击值,但在那里相同。没有运气...

不工作的复选框是一个在文本旁边“Publicera:”

见我JSFiddle,为什么不jQuery UI的让我我的复选框?

+0

在小提琴的复选框似乎为我工作。你在浏览什么浏览器? – JNF

+0

@JNF版43.0.2357.81在OSX约塞米蒂 – Jack

+2

类似的问题[jQueryUI的手风琴与复选框](64位)(http://stackoverflow.com/questions/7426425/jqueryui-accordion-with-checkboxes) –

回答

4

这是因为手风琴插件呼吁防止对头部元素click事件的默认,所以当你点击它的复选框默认行为被阻止。

一个可行的办法是停止点击事件的传播在头,这样就不会触发手风琴头点击处理程序。

$(".mm-panel").accordion({ 
    collapsible: true 
}); 

$(".mm-panel .ui-accordion-header input[type=checkbox]").click(function(e){ 
    e.stopPropagation(); 
}) 

演示:Fiddle

5

只需添加这个jQuery的事件,这将阻止任何父处理程序被通知的事件:

$("input[type=checkbox]").click(function(event){ 
    event.stopPropagation(); 

}); 
3

你将不得不从复选框

$('#panels input[type="checkbox"]').click(function(e) { 
    e.stopPropagation(); 
}); 

小提琴传播了停止活动:https://jsfiddle.net/msy345gv/2/