为什么我的for循环只显示数组的最后一个值?

时间:2012-11-25 15:00:08

标签: javascript arrays jquery-mobile for-loop

当我使用它进行循环时,它只输出我的数组的最后一个值。为什么这样呢?

fouteAntwoorden = [];
for (i = 0; i < fouteAntwoorden.length; i++) { 
        document.getElementById('antwoorden').innerHTML = fouteAntwoorden[i] + '<br>';      
    }

如果您想查看我的整个项目,请参阅JSFiddle。 http://jsfiddle.net/yTZbP/1/

编辑:

使用我的应用程序,您必须为dativ或accusativ分配单词。如果它错了,我想在result_page上显示你错误的单词。但我的for循环只显示最后一个错误的答案。你能帮我吗?

1 个答案:

答案 0 :(得分:5)

这一行:

document.getElementById('antwoorden').innerHTML = fouteAntwoorden[i] + '<br>';

每次迭代时重新分配antwoorden标记的内容。也许你的意思是+=

document.getElementById('antwoorden').innerHTML += fouteAntwoorden[i] + '<br>';

如果你想让多个元素里面有单独的单词,你为什么不创建单独的元素来存储文本呢?

for (i = 0; i < fouteAntwoorden.length; i++) {
    p = document.createElement("p");
    p.innerHTML = fouteAntwoorden[i] + '<br>';
    document.getElementById("SomeContainer").appendChild(p);
}