Как ставить/снимать флажки у дочерних чекбоксов с помощью родителя?

Есть такой html:
Родитель: <input type="checkbox" id="parent" onclick="checkboxClick('#parent','.mycheckbox');" ><br> 
<br> 
Дочерний 1 <input type="checkbox" class="mycheckbox"><br> 
Дочерний 2 <input type="checkbox" class="mycheckbox"><br> 
Дочерний 3 <input type="checkbox" class="mycheckbox"><br> 
Дочерний 4 <input type="checkbox" class="mycheckbox"><br> 
Дочерний 5 <input type="checkbox" class="mycheckbox">


К нему такой js:
function checkboxClick(parent,checkboxes) {
	if($(parent).is(':checked')) {
		$(checkboxes).attr('checked', true);
	} else {
		$(checkboxes).attr('checked', false);
	}	
}


Задача у меня такая: при клике на родителе, снимать/ставить галочки у дочерних.
Есть маленький нюанс - у меня будет неизвестное кол-во групп родителей с их дочерними элементами.
Я не пойму почему в моем коде только один раз можно поставить/снять галочку? При следующих кликах на родителе с дочерними ничего не происходит.
  • Вопрос задан
  • 557 просмотров
Пригласить эксперта
Ответы на вопрос 2
bubandos
@bubandos
bash'у, javascript'ую, php'лю, css'аю, html'каю
Потому что надо не attr('checked', true/false) использовать, а .prop
Ответ написан
Комментировать
supertrolyaso
@supertrolyaso
Самоучка
Проверил на codepen и у себя не компе лично, все прекрасно работает: https://codepen.io/anon/pen/jxOWxN
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы