html代码:javascript
<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代码:html
$(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'); } } }); });
父级选择时,子级全选;父级取消全选,子级所有取消;java
子级点击时,父级选择;子级个数为0时,父级取消选择。学习
代码摘自他人,供本人学习记录而已。this