HTML:Необычное флажок поведение
<input type="checkbox" id="1" val="1" onclick="select_box(id);" name="main_vals[]">Box 1
<input type="checkbox" class="sub_checkbox_1" val="1.1" name="sub_vals[]">Sub box 1
<input type="checkbox" class="sub_checkbox_1" val="1.1" name="sub_vals[]">Sub box 1
<input type="checkbox" class="sub_checkbox_1" val="1.1" name="sub_vals[]">Sub box 1
<input type="checkbox" id="2" val="2" onclick="selec_boxt(id);" name="main_vals[]">Box 2
<input type="checkbox" class="sub_checkbox_2" val="2.1" name="sub_vals[]">Sub box 2
<input type="checkbox" class="sub_checkbox_2" val="2.1" name="sub_vals[]">Sub box 2
<input type="checkbox" class="sub_checkbox_2" val="2.1" name="sub_vals[]">Sub box 2
<input type="checkbox" id="3" val="3" onclick="select_box(id);" name="main_vals[]">Box 3
<input type="checkbox" class="sub_checkbox_3" val="3.1" name="sub_vals[]">Sub box 3
<input type="checkbox" class="sub_checkbox_3" val="3.1" name="sub_vals[]">Sub box 3
<input type="checkbox" class="sub_checkbox_3" val="3.1" name="sub_vals[]">Sub box 3
Javascript:
select_box = function(id) {
if($('#main_checkbox_'+id).is(:checked)) {
$('.sub_checkbox_'+id).each(function() {
this.checked = true;
});
} else {
$('.sub_checkbox_'+id).each(function() {
this.checked = false;
});
}
}
Описание:
Как вы можете видеть, у меня есть несколько флажков. Моя цель здесь - проверить, установлен ли флажок с идентификатором main_checkbox_+id
, а также все соответствующие флажки с идентификатором sub_checkbox_+id
. Точно так же, если основной флажок снят, соответствующие флажки подпапки не должны быть отмечены. Хотя это, похоже, работает для большинства основных и вспомогательных флажков, есть несколько, которые не работают должным образом. С этими немногими, проверка, чтобы проверить, проверен ли main_checkbox, всегда дает false. Я не уверен, почему я испытываю такое поведение. У меня есть еще много флажков в html в том же формате. Иды динамически генерируются для всех флажков.
моя ошибка, я Бесполезный Не ставьте html вправо. я внес изменения, см. отредактированные html и js. – user2263104
Is 'selec_boxt (id);' опечатка? –
, когда вы передаете 'id', вы передаете' main_checkbox_1' функции, а не только '1', пожалуйста, см. Мой ответ – rikpg