テストと応答システムを作成しました。各質問には、1 つまたは複数の回答を含めることができます。たとえば、「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[]"
、2 番目の質問には回答セットがname="answer2[]"
あります。