复选框无法在手风琴列表

时间:2015-06-09 06:23:34

标签: jquery html css jquery-ui

我有一个包含一些对象的无序列表,当您单击<li>时,列表将最小化,当您再次单击它时,它将展开。我在Accordion上使用jQuery UI的API,问题是我的<li>内的复选框无法使用。我不可能让它工作,没有&#34;层&#34;在它上面。

我尝试过复选框position:absolute; z-index: 1000000000,但没有结果。我也尝试过创建函数,这些函数会更新点击的值,但同样如此。没有运气......

不起作用的复选框是文字&#34; Publicera:&#34;

旁边的复选框

查看我的JSFiddle,为什么赢得jQuery UI让我的复选框?

3 个答案:

答案 0 :(得分:5)

只需添加此jquery事件,该事件将阻止任何父处理程序收到事件通知:

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

});

答案 1 :(得分:4)

这是因为手风琴插件在标题元素点击事件中调用防止默认值,因此当您单击该复选框时,将阻止其默认操作。

一种可能的解决方案是停止在标题中传播click事件,这样它就不会触发手风琴标题点击处理程序。

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

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

演示:Fiddle

答案 2 :(得分:3)

您必须阻止事件从复选框

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

小提琴:https://jsfiddle.net/msy345gv/2/