0

这是带有许多复选框的复杂表单的一部分...

<div class="listbuilder-column">
    <h3 class="con_act_list">Activity</h3>
    <ul id="activity">
        <li>
            <input type="checkbox" id="con_act_1" name="con_act[]" class="con_act" value="fabricate"/>
            Fabricate roofs
        <li>
        <li>
            <input type="checkbox" id="con_act_2" name="con_act[]" class="con_act" value="buy-In"/>
            Buy-in roofs
        <li>
        <li>
            <input type="checkbox" name="con_act[]" class="con_act" value="install"/>
            Install roofs
        <li>
    </ul>
</div>
<div class="listbuilder-column"> ........   more checkboxes </div>

我想知道如何确定这些复选框的状态,即选中与否。我正在使用$(.con_act input:checked").length,但复选框嵌套在 div ...

4

2 回答 2

1

让你的特定div有一个 ID(即specdiv),你的选择器应该是

$("#specdiv [type=checkbox]:checked").length

或者,既然您已经拥有 的 ID ul,请执行以下操作:

$("#activity [type=checkbox]:checked").length

这是一个用于玩弄可能性的 jsfiddle:http: //jsfiddle.net/7WnBG/

于 2012-05-16T15:31:20.447 回答
0

要查找选中复选框的数量:

$('input.con_act:checkbox:checked').length;

这首先找到input元素,然后按类名过滤,然后只选择那些实际上属于的元素,type="checkbox"最后只选择在执行 jQuery 行时检查的那些元素。

嵌套级别几乎无关紧要,但您可以轻松地仅搜索特定父元素中的嵌套级别:

$('#activity').find('input.con_act:checkbox:checked').length;
/* or: */
$('#activity input.con_act:checkbox:checked').length;
于 2012-05-16T15:53:21.063 回答