+ -
当前位置:首页 → 问答吧 → 取UL元素直接子节点CheckBox值的问题

取UL元素直接子节点CheckBox值的问题

时间:2009-04-07

来源:互联网

嗯,晚上写一棵Checkbox Tree遇到点问题,发上来集思广益一把.
我想实现的过程是,当选中子节点的Checkbox时,根据同级节点的选中情况,置父级节点的选中情况,当然,树是多层的.
我的想法是,$(this).parents('ul')获得其祖先节点,再判断<ul>直接孩子下的checkbox选中情况,
问题是,如果获得这个<ul>直接孩子下的checkbox选中数目呢?
有好的实现方法告知兄弟一声.多谢.
树的结构是如下.
复制代码
  1. <UL >
  2.     <LI>
  3.         <INPUT type="checkbox" name="chks"  value="69203_0" />
  4.     </LI>
  5.     <LI>
  6.         <INPUT type="checkbox" name="chks"  value="69203_0" />
  7.     </LI
  8.     <LI>
  9.         <UL>
  10.             <LI>
  11.                 <INPUT  type="checkbox" name="chks"  value="69204_0"/>
  12.             </LI>
  13.         </UL>
  14.     </LI>
  15. </UL>

作者: anderszhang   发布时间: 2009-04-07

$("ul input:checkbox:checked").size()

作者: gordianyuan   发布时间: 2009-04-07

$("ul>li>input:checkbox:checked").size()

作者: seekarmor   发布时间: 2009-04-07

楼上两位仁兄的方法连孙子节点的选中状态都算进来了。
我只想要直接孩子的选择个数。

作者: anderszhang   发布时间: 2009-04-08

给最外层的UL加ID或CLASS,然后用操作符 >

作者: Lion5859   发布时间: 2009-04-08

楼上,这个也行不通吧。
因为是棵树。每次都是通过点击事件获得<UL>的。

作者: anderszhang   发布时间: 2009-04-08

引用
引用第3楼anderszhang于2009-04-08 10:02发表的 :
楼上两位仁兄的方法连孙子节点的选中状态都算进来了。
我只想要直接孩子的选择个数。

不会吧
$("ul>li>input:checkbox:checked").size() 只会选择中儿子节点

作者: seekarmor   发布时间: 2009-04-08

引用
引用第6楼seekarmor于2009-04-08 22:52发表的  :

不会吧
$("ul>li>input:checkbox:checked").size() 只会选择中儿子节点


试了试,是有孙子节点的.

作者: anderszhang   发布时间: 2009-04-13

那html应该为
<div>
<UL >
    <LI>
        <INPUT type="checkbox" name="chks"  value="69203_0" />
    </LI>
    <LI>
        <INPUT type="checkbox" name="chks"  value="69203_0" />
    </LI
    <LI>
        <UL>
            <LI>
                <INPUT  type="checkbox" name="chks"  value="69204_0"/>
            </LI>
        </UL>
    </LI>
</UL>
</div>

然后$("div>ul>li>input:checkbox:checked")

作者: gordianyuan   发布时间: 2009-04-14

引用
引用第7楼anderszhang于2009-04-13 20:05发表的 :


试了试,是有孙子节点的.

问题是,如果获得这个<ul>直接孩子下的checkbox选中数目呢
我明白了,你直接用它,当然有了
$(this).parents('ul').childern("li").find(":input:checked").size();
[ 此帖被seekarmor在2009-04-14 12:10重新编辑 ]

作者: seekarmor   发布时间: 2009-04-14