Установите / снимите флажок (Выбрать все), если все дочерние флажки выделены в этом div

введите описание изображения здесь

позвольте мне попытаться объяснить из образа,

1.Резервации, Клиенты проверяются под вкладкой Аренда автомобилей.

  1. Теперь из вкладки «Прокат автомобилей» оба выбраны из кода php, т. Е. (Бронирование, клиенты),

  2. Итак, теперь я хочу написать код в документе. Чтобы проверить флажок SelectAll_Dynamic (Выбрать все),! потому что все внутренние флажки (Бронирование, Клиенты) проверяются,

  3. если кто-либо из внутренних флажков (либо «Бронирование», либо «Клиенты») не установлен, то флажок «Выбрать все» («Выбрать все») должен быть снят.

14 – динамический.! для каждого нового div его меняется пример: 1,4,6,12 уникальных ..

<div id="tabs-14" class="tab-pane active"> <div class="panel-body"> <div class="row"> <div class="col-md-3"> <div class="checkbox"> <label> <input type="checkbox" class="SelectAll_Dynamic" id="14"> <b>Select All</b> </label> </div> </div> <div class="col-md-3"> <div class="checkbox"> <label> <input type="checkbox" name="pages[]" value="41" checked="">Reservations</label> </div> </div> <div class="col-md-3"> <div class="checkbox"> <label> <input type="checkbox" name="pages[]" value="52" checked="">Customers</label> </div> </div> </div> </div> </div> 

Я хочу выполнить функцию после загрузки страницы, которая должна проверить, отмечены ли все флажки или нет, кроме первого, у которого есть класс SelectAll_Dynamic

Если выбраны все дочерние флажки, родитель должен выбрать, как я могу это достичь.?

Это функциональность, которую я имею для проверки / снятия отметки со всех

 $('.SelectAll_Dynamic').click(function() { var select_Id = this.id; var checked = $(this).prop('checked'); $('#tabs-'+select_Id).find('input:checkbox').prop('checked', checked); }); $('.tab-pane').find('input:checkbox:not(:first)').click(function() { if (!$(this).is(':checked')) { $(this).closest('.tab-pane').find('input:checkbox:first').prop('checked', false); } else { var checkbox_length = $(this).closest('.tab-pane').find('input:checkbox:not(:first)').length; var checked_check_box_length = $(this).closest('.tab-pane').find('input:checkbox:not(:first):checked').length; if (checkbox_length == checked_check_box_length) { $(this).closest('.tab-pane').find('input:checkbox:first').prop('checked', true); } } }); 

Мои ожидаемые результаты:

 <input type="checkbox" class="SelectAll_Dynamic" id="14" checked> //checked 

если все дочерние флажки отмечены.!

Вам нужно сделать это, как показано ниже:

 $(document).ready(function(){ $('.tab-pane').each(function(){ var checkbox_length = $(this).find('input:checkbox:not(:first)').length; var checked_check_box_length = $(this).find('input:checkbox:not(:first):checked').length; if (checkbox_length == checked_check_box_length) { $(this).find('input:checkbox:first').prop('checked', true); } }); }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div id="tabs-14" class="tab-pane active"> <div class="panel-body"> <div class="row"> <div class="col-md-3"> <div class="checkbox"> <label> <input type="checkbox" class="SelectAll_Dynamic" id="14"> <b>Select All</b> </label> </div> </div> <div class="col-md-3"> <div class="checkbox"> <label> <input type="checkbox" name="pages[]" value="41" checked="">Reservations</label> </div> </div> <div class="col-md-3"> <div class="checkbox"> <label> <input type="checkbox" name="pages[]" value="52" checked="">Customers</label> </div> </div> </div> </div> </div> 
 $(document).ready(function() { var allCheckboxes = $('.SelectAll_Dynamic').closest('div[id^="tabs-"]').find('input:checkbox').not(":eq(0)"); var flag = true; $.each(allCheckboxes, function( i, val ) { if($(val).prop('checked') == false) flag = false; }); if(flag) $('.SelectAll_Dynamic').prop('checked', true); $('.SelectAll_Dynamic').click(function() { var select_Id = this.id; var checked = $(this).prop('checked'); $('#tabs-'+select_Id).find('input:checkbox').prop('checked', checked); }); $('.tab-pane').find('input:checkbox:not(:first)').click(function() { if (!$(this).is(':checked')) { $(this).closest('.tab-pane').find('input:checkbox:first').prop('checked', false); } else { var checkbox_length = $(this).closest('.tab-pane').find('input:checkbox:not(:first)').length; var checked_check_box_length = $(this).closest('.tab-pane').find('input:checkbox:not(:first):checked').length; if (checkbox_length == checked_check_box_length) { $(this).closest('.tab-pane').find('input:checkbox:first').prop('checked', true); } } }); }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div id="tabs-14" class="tab-pane active"> <div class="panel-body"> <div class="row"> <div class="col-md-3"> <div class="checkbox"> <label> <input type="checkbox" class="SelectAll_Dynamic" id="14"> <b>Select All</b> </label> </div> </div> <div class="col-md-3"> <div class="checkbox"> <label> <input type="checkbox" name="pages[]" value="41" checked="">Reservations</label> </div> </div> <div class="col-md-3"> <div class="checkbox"> <label> <input type="checkbox" name="pages[]" value="52" checked="">Customers</label> </div> </div> </div> </div> </div> 
 function SelectAll_Dynamic(){ if($('.SelectAll_Dynamic').is(':checked')){ //alert('if'); $( "input" ).prop( "checked", true ); } else { //alert('else'); $( "input" ).prop( "checked", false ); } } 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div id="tabs-14" class="tab-pane active"> <div class="panel-body"> <div class="row"> <div class="col-md-3"> <div class="checkbox"> <label> <input type="checkbox" class="SelectAll_Dynamic" onclick="SelectAll_Dynamic();" id="14" checked> <b>Select All</b> </label> </div> </div> <div class="col-md-3"> <div class="checkbox"> <label> <input type="checkbox" name="pages[]" value="41" checked="">Reservations</label> </div> </div> <div class="col-md-3"> <div class="checkbox"> <label> <input type="checkbox" name="pages[]" value="52" checked="">Customers</label> </div> </div> </div> </div> </div>