今天在写树的时候,对于怎样获取到同为<input type="checkbox">的父子节点问题想了半天,一直只能取到父节点和子节点,但是取不到子节点的子节点,父节点的父节点,最后发现原来可以这样写。写下来以后自己参考用
function checkNextObj(obj){ var chs=$(obj).next().children().children('input:checkbox'); if(chs!=null){ $(chs).attr('checked',obj.checked); var len=chs.length; for(var i=0;i<len;i++){ checkNextObj(chs[i]); } } } function checkParentObj(obj){ var chs=$(obj).parent().parent().parent().children('input:checkbox'); if(chs!=null){ var len=chs.length; for(var i=0;i<len;i++){ if(chs[i]!=obj){ if(obj.checked){ chs[i].checked = true; } checkParentObj(chs[i]); } } } } $(function(){ $('input:checkbox').click(function(){ checkNextObj(this); checkParentObj(this); }); });