我有一个包含可变数量记录的数组。我想在同一个html页面中打印数组的每个记录。我更喜欢它显示在列表中。
我有以下代码。但是这只会打印数组的最后一条记录,因为它会覆盖我的html ul-element中的前一条记录。
for (var i = 0; i < feedbackGeenLid.length; i++)
{
document.getElementById("feedback").innerHTML= ("<li>"+feedbackGeenLid[i] + "</li>");
}
有没有人知道如何实现这个目标?
答案 0 :(得分:3)
您的代码一直在替换您需要添加的innerHTML。
document.getElementById("feedback").innerHTML += ("<li>"+feedbackGeenLid[i] + "</li>");
^
|
Added + here
为了更好的性能,构建一个字符串并在循环结束时将其设置为innerHTML。
var out = "";
for (var i = 0; i < feedbackGeenLid.length; i++)
{
out += "<li>"+feedbackGeenLid[i] + "</li>";
}
document.getElementById("feedback").innerHTML= out;
另一种选择,使用appendChild()
答案 1 :(得分:1)
您正在重写每个循环中的内容。使用变量来连接内容,然后将其放在元素中:
var html = '';
for (var i = 0; i < feedbackGeenLid.length; i++)
{
html += "<li>"+feedbackGeenLid[i] + "</li>";
}
document.getElementById("feedback").innerHTML= html;