将新列表项添加到<;ul>;在JavaScript中使用for循环时的项

将新列表项添加到<;ul>;在JavaScript中使用for循环时的项,javascript,html,Javascript,Html,我正在创建一个测验,同时学习JavaScript。我创建了一系列对象,它们充当问题、潜在答案和正确答案。我一直在尝试遍历每个可能的答案,使用for循环,并将它们添加到我创建的现有答案中。我正在使用以下代码创建项目: var questChoices = function() { for(var i = 0; i < allQuestions[currQues].choices.length; i++){ var choiceHTML = '<li><

我正在创建一个测验,同时学习JavaScript。我创建了一系列对象,它们充当问题、潜在答案和正确答案。我一直在尝试遍历每个可能的答案,使用for循环,并将它们添加到我创建的现有答案中。我正在使用以下代码创建项目:

var questChoices = function() {
    for(var i = 0; i < allQuestions[currQues].choices.length; i++){
        var choiceHTML = '<li><input type="radio" name="choices" id="choice' + [i] + 1 +'"';
        choiceHTML += ' value="' + allQuestions[currQues].choices[i].toLowerCase() + '"' + ' />';
        choiceHTML += '<label for="choice' + [i] + 1 +'"' + '>';
        choiceHTML += allQuestions[currQues].choices[i] + '</label>';
        choiceHTML += '</li>';
        choicesHTML.appendChild(choiceHTML);
    }
} 

questChoices();
var questChoices=function(){
对于(var i=0;i”;
choiceHTML+='';
choiceHTML+=所有问题[currQues]。选项[i]+'';
选择HTML+=“”;
appendChild(choiceHTML);
}
} 
任务选择();
当页面加载并调用此函数时,控制台中出现以下错误:

未捕获的TypeError:未能在“节点”上执行appendChild:参数1不是“节点”类型


您使用的是一个简单的html字符串,可以设置为
choicesHTML.innerHTML

choicesHTML.innerHTML = choiceHTML;

要附加子节点,您需要使用
document.createElement
来创建实际节点。

您使用的是一个简单的html字符串,可以设置为
choicesHTML.innerHTML

choicesHTML.innerHTML = choiceHTML;

对于附加子节点,您需要使用
document.createElement
来创建实际节点。

谢谢helion3,现在更有意义了,我会继续做的。谢谢helion3,现在更有意义了,我会继续做的。