0

多肢選択式の質問でクイズを作成しようとしていますが、そのうちの 1 つに複数の正解があります。そのため、正しいフィードバックを提供するために、質問のどのチェックボックスが学生によって選択されているかを確認しようとしています。私のコードは次のとおりです。

for(var i = 0; i< input1.length; i++)
    {
        if(input1[0].checked && input1[1].checked)
        {
        submit_answer.onclick = showFeedback1; 
        }
        else
        {
        submit_answer.onclick = false1; 
        }
    }

その2つだけを選択しても、最初のifはかかりません。if ステートメントに何を入れても、else だけが必要です。

これは私の.jsのほんの一部です

var quiz = document.getElementById('quiz');

var questions = quiz.getElementsByTagName('p');

input1 = questions[0].getElementsByTagName('input');

var submit_answer = document.getElementById('submit_answers'); // this is the submit button
4

1 に答える 1

2

あなたがやろうとしていることを適切に推測することはできません。

最初の問題

あなたのforループは1でインクリメントしているので、次の各反復では、以前に使用された同じ値を使用して比較しています。

2番目の問題

あなたの構造はひどいです。あなたのスクリプトはすべての p 内のすべての入力要素を取得します。要素をグループで適切に編成し、それらがチェックされているかどうかに関係なく一致させる必要があります。

于 2013-05-30T17:02:59.163 に答える