繁体   English   中英

单击“下一步”按钮后,JavaScript无限循环

[英]JavaScript infinite loop upon clicking “Next” button

自从我上一次使用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();
}

每当我单击“下一步”按钮时,它都会将一个数组中的第二个问题(Element [1])以及另一个数组的答案加载到屏幕上。 但是页面仍处于无限加载状态,Firebug给出了消息:“重新加载以激活窗口控制台”

任何人?

我可能已经找到了问题,但不知道如何解决。

单击“下一步”按钮后,它将执行函数renderQuizViaArray();。 那是完全弄糟的地方..我错过了什么吗?

我基本上想要的是,用下一个问题的数据(包括答案​​)更新当前显示的文本。

它们是其中包含的文件:quiz.html: http ://rapidimg.org/server/files/50ab9c326115cKAUf6S.png ........ quiz_questions.js: http ://rapidimg.org/server/files/ 50ab9c536ed44UWhV54.png ......... quiz_functions.js:显示在主要帖子中

不要使用

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

采用

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM