Javascript 在jquery mobile中向可折叠列表标题添加复选框
我在jQuery移动网站上遇到了一个问题。我正在开发一个带有可折叠列表()的jQuery移动网站Javascript 在jquery mobile中向可折叠列表标题添加复选框,javascript,jquery,css,jquery-mobile,mobile,Javascript,Jquery,Css,Jquery Mobile,Mobile,我在jQuery移动网站上遇到了一个问题。我正在开发一个带有可折叠列表()的jQuery移动网站 我的客户机需要在标题中有一个复选框,这样用户就可以在不打开列表的情况下检查列表。我试着把它放进去,但效果不好。复选框出现,但不可单击。我在谷歌搜索了很多,但没有找到解决方案。希望你们能帮我。请 这应该行得通。如果有多个复选框,请确保为复选框提供唯一的ID。不要忘记复选框和标签 <div id="collapsibleSetWrapper" data-role="collapsible-set"
我的客户机需要在标题中有一个复选框,这样用户就可以在不打开列表的情况下检查列表。我试着把它放进去,但效果不好。复选框出现,但不可单击。我在谷歌搜索了很多,但没有找到解决方案。希望你们能帮我。请 这应该行得通。如果有多个复选框,请确保为复选框提供唯一的ID。不要忘记复选框和标签
<div id="collapsibleSetWrapper" data-role="collapsible-set">
<div data-role="collapsible" data-collapsed="true">
<h3>
<span>some title</span>
<input class="mycheckbox" type="checkbox" id="uniqueID"/>
<label for="uniqueID"> </label>
</h3>
<div id="mycontent">
<p>this is the content</p>
</div>
</div>
</div>
<script>
$('#collapsibleSetWrapper .mycheckbox').checkboxradio({
create: function(event,ui){
var checkbox = $(event.target);
var clickTarget = $(event.target).parent();
$(clickTarget).click(function(e){
if($(checkbox).is(':checked')){
$(checkbox).attr("checked",false).checkboxradio("refresh");
// select all the nested checkboxes here
}
else{
$(checkbox).attr("checked",true).checkboxradio("refresh");
// unselect all the nested checkboxes here
}
e.preventDefault();
return false;
});
}
})
</script>
一些头衔
这就是内容
$('#collapsablesetwrapper.mycheckbox').checkboxradio({
创建:函数(事件、用户界面){
var复选框=$(event.target);
var clickTarget=$(event.target).parent();
$(单击目标)。单击(功能(e){
如果($(复选框).is(':checked')){
$(复选框).attr(“选中”,false).checkboxradio(“刷新”);
//选择此处的所有嵌套复选框
}
否则{
$(复选框).attr(“选中”,true).checkboxradio(“刷新”);
//取消选中此处的所有嵌套复选框
}
e、 预防默认值();
返回false;
});
}
})
礼貌是不会出错的。谢谢Ed,可能对他不起作用,但肯定对我起作用。@Edd对我来说,代码几乎可以完美地工作,我的问题是,未选中的复选框只能被反复检查一次。无法再次检查(=第三次单击)。你能理解我吗?@Max我不确定,但请尝试以下方法:使用if($(复选框).is(':checked'))代替if($(复选框).prop('checked')==true)。另外,将所有$(checkbox).attr('checked',…)替换为$(checkbox).prop('checked',…)。现在让我来。如果有效,我将编辑我的答案。