Я создал тестовую систему и систему ответа. Каждый вопрос может содержать один или несколько ответов, например «Пожалуйста, отметьте 1 ответ», «Пожалуйста, отметьте 3 ответа» и т. Д.Динамически ограничить количество флажков, которые могут быть проверены пользователем
Можно ли ограничить количество флажков, которые пользователь может проверить на основании этого? Если на вопрос требуется 1 ответ, тогда они могут проверять только 1 из флажков.
<?php foreach ($rows as $row){ ?>
<input type="checkbox" name="answer<?php echo $counter; ?>[]" value="<?php echo the_sub_field('answer'); ?>" />
<?php echo $row['answer']; ?>
<?php } ?>
Это петли через это и тянет в каждом ответе, количество ответов, необходимых для каждого вопроса является динамическим и управляется этой области (где он может быть 1, 2, 3 и т.д.):
<?php echo $repeater_row['required_answers']; ?>
Использование JQuery ниже, хотя это не является динамическим:
$(document).ready(function() {
if ($("input:checkbox:checked").length >= 3) {
$("input:checkbox").not(":checked").attr("disabled", 3);
}
$("input:checkbox").click(function() {
var bol = $("input:checkbox:checked").length >= 3;
$("input:checkbox").not(":checked").attr("disabled", bol);
});
});
Как с Я делаю это динамически? У каждого вопроса есть ответы, названные в наборах, поэтому в первом вопросе есть набор ответов, названный с их вводом с именем name="answer1[]"
, второй вопрос имеет набор ответов name="answer2[]"
и так далее.
Почему бы не использовать переключатель, а? – Sablefoste
@SableFoste Пользователь может выбрать один или несколько ответов. – Rob