html代码:
<volist name="sblx.shebei" id="sb">
<tr>
<td>
<input level='1' name="shebei[]" type="checkbox" value="<{$sb.sbid}>"><{$sb.sbname}>
</td>
<td>
<volist name="sb.xjshebei" id="xjsb">
<input level='2' name="shebei[]" type="checkbox" value="<{$xjsb.sbid}>"><{$xjsb.sbname}>
</volist>
</td>
</tr>
</volist>
jq代码:
$(function(){
$('[level=1]').click(function(){
if(this.checked)
{
$(this).parent().parent().find('input').prop('checked','checked');
}
else
{
$(this).parent().parent().find('input').removeAttr('checked');
}
});
$('[level=2]').click(function(){
if (this.checked)
{
$(this).parent().prev().find('input').prop('checked','checked');
}
else
{
//当子分类个数为0时,去掉父级选项
if($(this).parent().find('input:checked').length==0)
{
$(this).parent().find('input').removeAttr('checked');
$(this).parent().prev().find('input').removeAttr('checked');
}
}
});
});
父级选择时,子级全选;父级取消全选,子级全部取消;
子级点击时,父级选择;子级个数为0时,父级取消选择。
代码摘自他人,供本人学习记录而已。