Javascript jQuery帮助取消选中父项时,我需要切换子项复选框
我正在做一个简单的复选框树 如果单击太平洋>加利福尼亚>湾区>则会显示一个复选框。如果取消选中“间隔区域”,则取消选中“子项”复选框。到现在为止,一直都还不错。我遇到的问题是,如果您再次这样做,但这次取消选中“加利福尼亚”,然后再次选中“蝙蝠区域”,孩子们都未选中,但如果您选中“海湾区域”,则切换是反向的 如何取消切换或防止这种情况发生Javascript jQuery帮助取消选中父项时,我需要切换子项复选框,javascript,jquery,html,checkbox,Javascript,Jquery,Html,Checkbox,我正在做一个简单的复选框树 如果单击太平洋>加利福尼亚>湾区>则会显示一个复选框。如果取消选中“间隔区域”,则取消选中“子项”复选框。到现在为止,一直都还不错。我遇到的问题是,如果您再次这样做,但这次取消选中“加利福尼亚”,然后再次选中“蝙蝠区域”,孩子们都未选中,但如果您选中“海湾区域”,则切换是反向的 如何取消切换或防止这种情况发生 $('.region-group-checkbox').click(function() { $(this).siblings('.region-st
$('.region-group-checkbox').click(function() {
$(this).siblings('.region-state').toggle();
$(this).siblings().next().find(':checkbox').prop('checked', false);
});
$('.region-state-checkbox').click(function() {
$(this).siblings('.region-state-area').toggle();
$(this).siblings().next().find(':checkbox').prop('checked', false);
});
$('.region-state-area-checkbox').click(function() {
$(this).siblings('.region-state-area-sub').toggle();
$(this).siblings().next().find(':checkbox').prop('checked', false);
});
您可以为这些复选框触发
单击事件,而不是将属性checked
设置为false
$('.region-group-checkbox').click(function () {
$(this).siblings('.region-state').toggle();
$(this)
.siblings()
.next()
.find(':checkbox:checked')
.trigger('click');
});
$('.region-state-checkbox').click(function () {
$(this).siblings('.region-state-area').toggle();
$(this)
.siblings()
.next()
.find(':checkbox:checked')
.trigger('click');
});
$('.region-state-area-checkbox').click(function () {
$(this).siblings('.region-state-area-sub').toggle();
$(this)
.siblings()
.next()
.find(':checkbox:checked')
.trigger('click');
});
这可能不是最优雅的解决方案,但应该易于理解