コンテスト用にラジオ ボタンを使用して 4 つのフォームをセットアップする必要があります。選択によって他のオプションが無効になるようにセットアップしたいので、質問 1 で A を選択した場合、オプション A は 2、3、4 で無効になります。
私はなんとか何かをまとめることができましたが、私の知識は限られているので、おそらくこれが最も長い方法であり、2つの追加のフォームを構築する前に、誰かがより簡単な方法を知っていることを望んでいます.
フィドルをセットアップしますhttp://jsfiddle.net/2Kc6m/2/
HTML:
<form id="answer1" class="radioOptions">
<div class="formInput"><input type="radio" value="A1" name="question1" /> A</div>
<div class="formInput"><input type="radio" value="B1" name="question1" /> B</div>
<div class="formInput"><input type="radio" value="C1" name="question1" /> C</div>
<div class="formInput"><input type="radio" value="D1" name="question1" /> D</div>
</form>
<form id="answer2" class="radioOptions">
<div class="formInput"><input type="radio" value="A2" name="question2" /> A</div>
<div class="formInput"><input type="radio" value="B2" name="question3" /> B</div>
<div class="formInput"><input type="radio" value="C2" name="question3" /> C</div>
<div class="formInput"><input type="radio" value="D2" name="question2" /> D</div>
</form>
脚本:
$('.answerOptions').click(function(){
if(this.value == 'A1' && this.checked){
$('input[value=A2]').prop('disabled', true);
$('input[value=B2], input[value=C2], input[value=D2]').prop('disabled', false);
}
else if(this.value == 'B1' && this.checked){
$('input[value=A2], input[value=C2], input[value=D2]').prop('disabled', false);
$('input[value=B2]').prop('disabled', true);
}
else if(this.value == 'C1' && this.checked){
$('input[value=C2]').prop('disabled', true);
$('input[value=A2], input[value=B2], input[value=D2]').prop('disabled', false);
}
else if(this.value == 'D1' && this.checked){
$('input[value=A2], input[value=B2], input[value=C2]').prop('disabled', false);
$('input[value=D2]').prop('disabled', true);
}
else{
$('.answerOptions').not(this).prop('checked', false).prop('disabled', false);
}
});