gpt4 book ai didi

javascript - 检查所有子复选框

转载 作者:行者123 更新时间:2023-11-30 10:51:16 26 4
gpt4 key购买 nike

当用户选中一个父复选框时,我需要选中所有子复选框。例如,如果用户使用 id ='s9' 选中复选框然后带有 id s15 的复选框, s16s116必须检查,因为它们有 parentId='s9' .

<span class='font-bold'><input id='s1'  type='checkbox'/>bla</span><br/>
<span class='left-indent'><input id='s2' parentId='s1' type='checkbox'/>bla11</span><br/>
<span class='left-indent'><input id='s3' parentId='s1' type='checkbox'/>bla12><br/>
<span class='left-indent'><input id='s4' parentId='s1' type='checkbox'/>bla13</span><br/>
<span class='left-indent'><input id='s5' parentId='s1' type='checkbox'/>bla14</span><br/>
<span class='left-indent'><input id='s6' parentId='s1' type='checkbox'/>bla15</span><br/>


<span class='font-bold'><input id='s8' type='checkbox'/>bla2</span><br/>
<span class='font-bold'><input id='s9' type='checkbox'/>bla3</span><br/>
<span class='left-indent'><input id='s15' parentId='s9' type='checkbox'/>bla31</span><br/>
<span class='left-indent'><input id='s16' parentId='s9' type='checkbox'/>bla32</span><br/>
<span class='left-indent'><input id='s116' parentId='s9' type='checkbox'/>bla32</span><br/>

<span class='font-bold'><input id='s10' type='checkbox'/>bla4</span><br/>
<span class='font-bold'><input id='s11' type='checkbox'/>bla5</span><br/>

更新

如果检查了一些子项,则也必须检查父项。

如果所有子项都未选中,则父项也必须取消选中。

最佳答案

您不应将 parentId 用作自定义属性,因为它会使您的 HTML 无效。改用类名:

<input id="s9" type="checkbox" />
<input id="s15" class="parent-s9" type="checkbox" />
<input id="s16" class="parent-s9" type="checkbox" />

示例:

$('input[type=checkbox]').change(function() {
// get id of the current clicked element
var id = $(this).attr('id');
// find elements with classname 'parent-<id>' and (un)check them
var children = $('.parent-' + id).attr('checked', $(this).attr('checked'));
});

Live example here.

关于javascript - 检查所有子复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5152905/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com