0

最後に JavaScript をやったのは久しぶりですが、学校で強制的に JavaScript プロジェクトに参加させられました。ということで、簡単なクイズゲームを作ってみました。かなり順調に進んでいますが、おそらく非常に単純なことで問題が発生しています。

var useranswers = new Array();
var imgArray = new Array();
var answered = 0;
var currentQuestion = 0;

function renderQuizViaArray() 
{
    document.writeln('<h1>' + questions[currentQuestion] + '</h1>');

    for(i=0; i < choices[currentQuestion].length; i++)
    {
        document.writeln('<input type="radio" name="answer_' + currentQuestion + '" value="1" id="answer_' + currentQuestion + '_' + i + '" class="question_' + currentQuestion + '" onclick="submitAnswer(' + currentQuestion + ', this, \'question_' + currentQuestion + '\', \'label_' + currentQuestion + '_' + i + '\')" /><label id="label_' + currentQuestion + '_' + i + '" for="answer_' + currentQuestion + '_' + i + '"> ' + choices[currentQuestion][i] + '</label><br />');
    }

    document.write('<input type="submit" value="NEXT" onclick="nextQuestion()" />');
}

function nextQuestion()
{
    currentQuestion++;
    renderQuizViaArray();
}

「次へ」ボタンをクリックするたびに、配列から 2 番目の質問 (Element[1]) と別の配列の回答が画面に読み込まれます。しかし、ページは無限の読み込み状態のままで、Firebug は次のメッセージを表示します:「ウィンドウ コンソールをアクティブにするためにリロードします」

誰?

4

2 に答える 2

0

私はおそらく問題を見つけましたが、それを修正する方法がわかりません。

「次へ」ボタンをクリックするとすぐに、関数 renderQuizViaArray(); が実行されます。それは完全に台無しです..何かが足りないのですか?

私が基本的に望んでいるのは、現在表示されているテキストが、回答を含む次の質問のデータで更新されることです。

quiz.html: http://rapidimg.org/server/files/50ab9c326115cKAUf6S.png ........ quiz_questions.js: http://rapidimg.org/server/files/ 50ab9c536ed44UWhV54.png ......... quiz_functions.js: メイン ポストに表示

于 2012-11-21T08:32:36.323 に答える
-1

使用しないでください

for(i=0; i < choices[currentQuestion].length; i++)

使用する

for(i=0, j=choices[currentQuestion].length; i < j; i++)
于 2012-11-20T09:07:59.203 に答える