我不断收到此错误丢失),由于这两条线路:不断收到语法错误:之后参数列表
document.getElementById('button').innerHTML = '<p><button
onClick = "MultiAnswer('+ questions[output] + ',' + answer[output]
+');">Submit</button></p>';
而且我想不通,我错过了什么。
编辑:这是周围的代码(原谅混乱)包含使用switch语句确定所需数组的输入的方法,从那里将它放入DisplayQuestion的参数中,然后将它传递给下面的函数行为就想:
function MultiQuest(questions, choices, answer){
var output = Math.floor(Math.random() * (questions.length));
var choicesOut = [];
document.getElementById('question').innerHTML = '<p id = "Q1">' + questions[output] + '<p><br>';
for(var k = 0;k < choices[output].length; k++){
choicesOut.push('<p><input id = "choice'+[k]+'" type = "radio" name = "option" value="'+choices[output][k]+'">' + choices[output][k] + '<p>');
}
document.getElementById('answers').innerHTML = choicesOut.join("");
document.getElementById('button').innerHTML = '<p><button onClick = "MultiAnswer('+ questions[output] + ',' + answer[output] +');">Submit</button></p>';
document.getElementById('score').innerHTML = '<p>' + score + '<p>';
}
function MultiAnswer(questions, answer, pageType){
var currentQuestion = document.getElementById('Q1').textContent;
var number = multiQuestions(currentQuestion, questions);
var correctAnswer = answer[number];
var givenAnswer;
var options = document.getElementsByName('option');
var i
for(i = 0; i < options.length; i++){
if(options[i].checked){
givenAnswer = options[i].value;
}
}
if(givenAnswer == correctAnswer){
alert("Right Answer!");
score++;
} else {
alert("Wrong Answer!");
score = 0;
}
i = 0;
DisplayQuestion(pageType);
}
function multiQuestions(currentQuestion, whichArray){
for(var i = 0; i < multiquestions.length; i++){
if(currentQuestion == whichArray[i]){
return i;
}
}
return null;
}
请粘贴代码和标记导致该问题的线路。 –
这很可能不是您在此粘贴的代码,因为我可以复制并粘贴该代码而不会收到相同的错误。显示更多周围的代码 - 这可能是导致这一问题的一两个问题。 – Jason
你有不同的代码行吗?由于您正在构建一个字符串,因此可能会导致该问题。因为js行工作正常https://jsfiddle.net/cmhb465u/15/ – Imprfectluck