【发布时间】:2017-05-17 22:20:27
【问题描述】:
我有一个标题复选框和后续的“子”复选框,每次加载我的应用程序时都会以编程方式显示。
我试图确保如果用户取消选中所有子框,它会自动取消选中标题。我在开始时映射了页面上的所有复选框:
var x = '';
$(document).ready(function() {
$('.class').map(function () {
x += ('Yes');
});
alert(x);
});
这给了我一个数组,其中“是”表示每个部分中存在的复选框的数量。
当用户取消选中该类中的复选框时,我需要能够将数组分割成空。我被卡住了。
这是我的更改监听器:
$(':checkbox').change(function () {
if(**THE CHECKBOX I AM UNCHECKING HAS THE CLASS**) {
x.slice(-1);
}
});
解决方案:
<input class='children' type='checkbox'/>
<input class='children' type='checkbox'/>
<input class='header' type='checkbox'/>
var check_count = $(".children:checked").length;
$(".children").change(function () {
if(!this.checked) {
if (check_count == 0) {
$(".header").prop("checked", false);
}
}
});
【问题讨论】:
-
在复选框中添加一个更改监听器,如果未选中检查是否所有兄弟姐妹都未选中,如果全部未选中则取消选中父项
-
更新我原来的帖子。我有一个变化的听众,它只是不好。
标签: javascript jquery class checkbox