看看这个例子并添加任何你想要的东西。这不是您的全部要求,但可以在此基础上进行构建。
这是原始示例。
<li data-icon="false">
<div class="checkBoxLeft">
<input type="checkbox" name="checkbox-0" id="checkbox-0"/>
</div>
<a href="#" class="detailListText"> Message 1 </a>
</li>
现在很容易在 li 元素及其子复选框之间创建关联。
为了能够在与 li 元素交互时激活/停用 chechbox,请使用以下代码:
长:
$('li').bind('click', function(e) {
if($(this).find('input[type="checkbox"]').is(':checked')) {
$(this).find('input[type="checkbox"]').prop('checked', false)
} else {
$(this).find('input[type="checkbox"]').prop('checked', true)
}
});
短的:
$('li').bind('click', function(e) {
$(this).find('input[type="checkbox"]').prop('checked', ($(this).find('input[type="checkbox"]').is(':checked')) ? false : true);
});
这应该适用于 jQuery 版本 1.6 及更高版本。
最后的笔记
如果您想了解更多关于如何自定义 jQuery Mobile 页面和小部件的信息,请查看这篇文章。它附带了许多工作示例,包括为什么 !important 对于 jQuery Mobile 是必需的。