0

使用HTML标签的树视图,当检查“TVCheckBox atterent”时,如何计算其所有儿童的“TVCheckbox attr”,其中使用jQuery检查。

 <li class="others"><input type="checkbox" value="ALPHABETS" class="tvcheckbox attrParent">ALPHABETS
    <ul>
        <li><input type="checkbox" class="tvcheckbox attr" value="A">A</li>
        <li><input type="checkbox" class="tvcheckbox attr" value="B">B</li>
        <li><input type="checkbox" class="tvcheckbox attr" value="C">C</li>
        <li><input type="checkbox" class="tvcheckbox attr" value="D">D</li>
        <li><input type="checkbox" class="tvcheckbox attr" value="E">E</li>
        <li><input type="checkbox" class="tvcheckbox attr" value="F">F</li>
    </ul>
</li>

我试过

   `$('input.tvcheckbox.attrParent:checked').each(function(){
           var len = $(this).parent().children(".checked").length;
    });`

但并不成功。任何人都可以帮忙吗?先感谢您。

4

5 回答 5

3

我想我找到了答案:

$(this).parent().find('input.tvcheckbox.attr:checked').length;

不管怎样,谢谢大家的意见。:)

于 2012-05-10T05:58:18.700 回答
0
  var len = 0 ;

$('.others').find('li').each(function(){

      if($(this).find('checkbox').is(':checked'))
      { 
          len++;
      }    

});
于 2012-05-10T05:58:09.723 回答
0

我假设您的其余选择器是正确的。

$('input.tvcheckbox.attrParent:checked').each(function(){
   var len = $(this).parent().children(":checked").length;
});

在此处阅读有关:checked选择器的更多信息

于 2012-05-10T05:59:31.323 回答
0
$('.tvcheckbox.attrParent').change(function(){
alert($('.tvcheckbox.attr:checked').length)
    });​

在 JsFiddle 中查看演示

于 2012-05-10T06:04:18.877 回答
0

这是一个工作示例。我没有尝试对这个示例中的复选框进行分组。

<html>
  <head>
    <title>Check Test</title>
    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>
    <script type="text/javascript">
        $(function () {
            $("#btnGet").click(function () {
                var checkedItems = "";
                $("input[type='checkbox']").each(function (i) {
                    if ($(this).attr("checked") == true) {
                        checkedItems += "," + $(this).val();
                    }
                });
                alert(checkedItems.slice(1));
            });
        });
    </script>
  </head>
  <body>
    <input type="checkbox" value="ALPHABETS" class="tvcheckbox attrParent" />ALPHABETS
    <ul>
        <li><input type="checkbox" class="tvcheckbox attr" value="A" />A</li>
        <li><input type="checkbox" class="tvcheckbox attr" value="B" />B</li>
        <li><input type="checkbox" class="tvcheckbox attr" value="C" />C</li>
        <li><input type="checkbox" class="tvcheckbox attr" value="D" />D</li>
        <li><input type="checkbox" class="tvcheckbox attr" value="E" />E</li>
        <li><input type="checkbox" class="tvcheckbox attr" value="F" />F</li>
    </ul>
    <input type="button" value="Get checked" id="btnGet"/>
  </body>
</html>
于 2012-05-10T06:26:32.297 回答