jquery复选框上面有多少

时间:2011-06-28 12:23:32

标签: jquery checkbox traversal

检查checkbox_01时,div1切换。

HTML

<div>
    <ul>
       <li><input type="checkbox" id="checkbox_01" /></li>    
        <div id="div1" class="toggle">
            <ul>
                <li><input type="checkbox" id="checkbox_02" /></li>
                <li><input type="checkbox" id="checkbox_03" /></li>
            </ul>
        </div>
    </ul>
</div>

预期产出

checkbox01
-checkbox02
-checkbox03

如何根据复选框获得关卡?

  

var x = $(this).prevAll('div:has(:checkbox)')。find(':checkbox');

2 个答案:

答案 0 :(得分:1)

您需要重新编写HTML。它无效:

<div>
    <ul>
       <li>
            <input type="checkbox" id="checkbox_01" />    
            <div id="div1" class="toggle">
                <ul>
                    <li><input type="checkbox" id="checkbox_02" /></li>
                    <li><input type="checkbox" id="checkbox_03" /></li>
                </ul>
            </div>
        </li>
    </ul>
</div>

请注意,div.toggle现在位于li内。然后,只需像这样切换它:

http://jsfiddle.net/TqV9g/

答案 1 :(得分:0)

我不知道这是否是您所需要的:

$('#div1').hide();
$('#checkbox_01').click(function(){
    $('#div1').toggle($(this).is(':checked'));
});

单击复选框时,div“切换”。

在这里摆弄:http://jsfiddle.net/2XWaU/1/