jQuery:查找所单击对象的父级中已检查子项的数量

时间:2014-02-27 21:42:58

标签: javascript jquery

假设您有一个列表:

<ol>
    <li>Some text<input type="checkbox" /><input type="checkbox" /></li>
    <li>Some text<input type="checkbox" /><input type="checkbox" /></li>
</ol>

我需要查看列表项中有多少个复选框,并且仅在选中这两个复选框时执行某些操作。

$(document).ready(function(
$("input:checkbox").click(function() {
    if ($(this).parent().children("input:checkbox") == checked) {
                do something;
            }
});
});

到目前为止,我已经找到了在整个文档中检查数字的方法,我可以告诉我是否选中了“this”。我感谢任何人都可以提供帮助。感谢。

3 个答案:

答案 0 :(得分:2)

$(document).ready(function(
    $("input:checkbox").click(function() {
        if ($(this).parent().children("input:checked").length==2) {
            do something only if 2 are selected;
        }
    });
});

答案 1 :(得分:0)

使用:已选中

$(document).ready(function(
    $("input:checkbox").click(function() {
        if ($(this).parent().children("input:checked").length == 2) {
            do something;
        }
    });
});

http://api.jquery.com/checked-selector/

答案 2 :(得分:0)

您可以使用:checked选择器来获取已选中的元素。你可以只读取结果的长度。

var cnt = $(this).parent().children("input:checkbox:checked").length; 

如果你想知道当前元素是否被选中,那么就像

一样简单
if (this.checked) {

}