【发布时间】:2021-02-14 11:11:09
【问题描述】:
我正在循环遍历一个数组。每次迭代,我将变量的值设置为数组中的当前索引,并将其附加到我的 HTML 中的 div 中。但是,只有最后一个索引被附加到 div。
这是我的代码:
for (var i = 0; i < pronouns.length; i++) {
var para = document.createElement("P");
para.innerHTML = pronouns[i];
para.style = "display: inline-block";
alert(pronouns[i])
document.getElementById("main").appendChild(para);
document.getElementById("main").appendChild(input);
document.getElementById("main").appendChild(br);
}
pronouns 等于:['I','Me','You']。
有人可以帮忙吗?
【问题讨论】:
-
input 和 br 只是添加的其他元素,它们在 for 循环之外被声明。他们的价值观永远不会改变。
-
para.innerHTML = pronouns[i];将分配pronouns[i]所指的任何内容,覆盖para的当前innerHTML。你可能想要para.innerHTML = para.innerHTML + pronouns[i]。 -
可以添加输入和br的定义吗?我已经测试了评论这些行并将
IMeYou输出到 div 中。 -
@BenM 不应该改变太多,因为
para是一个新创建的元素 -
您能否创建一个minimal reproducible example 以便我们查看问题并帮助您调试它?目前,您的问题似乎无法重现:jsfiddle.net/3aw510d2
标签: javascript