具有多个具有此结构的.ancestor
元素
<div class="ancestor">
<div class="parent-1"></div>
<div class="parent-2">
<div class="checkbox-group">
<input type="checkbox">
<input type="checkbox">
<input type="checkbox">
</div>
</div>
</div>
使用JQuery,如果在.parent-1
中至少选中了一个复选框,我可以向.checkbox-group
添加一个类吗?如果所有的复选框都被取消选中,我可以删除它吗?
我想出了这个
if ($('.checkbox-group input:checked').length > 0 ) {
$(this).closest('.parent-2').siblings('.parent-1').toggleClass("active");
}
但我想我做错了
发布于 2021-04-19 14:37:05
使用:has()
选择器
https://api.jquery.com/has-selector/
$('.parent-2:has(.checkbox-group input:checked)')
.siblings('.parent-1')
.toggleClass('active')
.active { color: red }
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="ancestor">
<div class="parent-1">state</div>
<div class="parent-2">
<div class="checkbox-group">
<input type="checkbox">
<input type="checkbox" checked>
<input type="checkbox">
</div>
</div>
</div>
https://stackoverflow.com/questions/67163816
复制相似问题