Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/444.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
简单测验中的JavaScript循环_Javascript_Arrays_Loops_Firebug - Fatal编程技术网

简单测验中的JavaScript循环

简单测验中的JavaScript循环,javascript,arrays,loops,firebug,Javascript,Arrays,Loops,Firebug,基于JavaScript的简单学校测验项目,整个测验包括以下文件: quick.html: quick_questions.js:图像后面的随机字母表示它确实加载了答案 quick_functions.js:这是它的主要内容,见下文。 输出:这是正确的! 它加载一个问题和相应的答案,这样就可以了。请参见上面的输出。现在,只要我通过选择或不选择答案单击“下一个问题”,就会发生两种不同的情况 未选择答案:-加载问题2+答案,但将页面置于无限加载状态。当我单击另一个答案并点击下一个问题时,Firebu

基于JavaScript的简单学校测验项目,整个测验包括以下文件:

quick.html: quick_questions.js:图像后面的随机字母表示它确实加载了答案 quick_functions.js:这是它的主要内容,见下文。 输出:这是正确的! 它加载一个问题和相应的答案,这样就可以了。请参见上面的输出。现在,只要我通过选择或不选择答案单击“下一个问题”,就会发生两种不同的情况

未选择答案:-加载问题2+答案,但将页面置于无限加载状态。当我单击另一个答案并点击下一个问题时,Firebug显示:

选择答案:-加载问题3+答案???但也会使页面处于无限负载状态。单击“答案+下一个问题”按钮时出现与上述相同的错误:

下面是quick_functions.js的代码,实现了这一点:

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


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

    for(i=0, j=choices[currentQuestion].length; i < j; 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 Question" onclick="nextQuestion()" />');
}

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

function submitAnswer(questionId, obj, classId, labelId) 
{
  useranswers[questionId] = obj.value;
  document.getElementById(labelId).style.fontWeight = "bold";
  disableQuestion(classId);
  answered++;
}

function disableQuestion(classId) 
{
  var alltags = document.all? document.all : document.getElementsByTagName("*")
  for (i = 0; i < alltags.length; i++) 
  {
    if (alltags[i].className == classId) 
    {
      alltags[i].disabled = true;
    }
  }
}