【问题标题】:Why is only the last value of the array being displayed by my for loop? [closed]为什么我的 for 循环只显示数组的最后一个值? [关闭]
【发布时间】:2012-11-13 04:23:48
【问题描述】:

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

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 循环只显示最后一个错误的答案。你能帮我吗?

【问题讨论】:

    标签: javascript arrays jquery-mobile for-loop


    【解决方案1】:

    这一行:

    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);
    }
    

    【讨论】:

    • 有点用。我显示了更多的值。但是输出有点奇怪+=
    • 也许如果您告诉我们错误的原因或方式,我们可以提供更多帮助。
    • 还是不完全清楚;我对您可能要求的内容有所了解,但如果我不正确,请不要误会我,我可能误解了您。
    • 请在发布之前检查您的解决方案。只是为了检查,将滑块设置为 10,然后单击三个按钮之一 10 次。然后你有一些好的和一些错误的。您的两个答案都给出了错误的单词,但顺序非常奇怪,而且多次出现。我希望你能进一步帮助我..
    • @user1761155 我想如果有人可以要求对方检查某事,那是我,而不是你。你犯了一个非常明显的错误,我的解决方案很好 - 如果它仍然不起作用,唯一的原因是你在不同地方的代码中有更多错误。
    猜你喜欢
    • 2015-06-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-07
    • 2023-03-19
    • 1970-01-01
    相关资源
    最近更新 更多