【问题标题】:innerHTML write in a divinnerHTML 在 div 中写入
【发布时间】:2014-06-07 14:04:07
【问题描述】:
    <div id="story"></div>
    <script>
    function go(){
         var test = [];
            for (i=1; i<11; i++){
            test[i]=i;
            var words = document.getElementById(test[i]).value
            document.getElementById("story").innerHTML="hello "+test[i];
        }
    }

我希望将 for 循环中的所有内容写入 div。但是,只有循环的最后一个值 (10) 被写入 div。我怎样才能得到那里写的所有值?

【问题讨论】:

标签: javascript html for-loop innerhtml


【解决方案1】:

您正在替换要连接的 innerHTML 使用 +=

document.getElementById("story").innerHTML+="hello "+test[i];

document.getElementById("story").innerHTML = 
    document.getElementById("story").innerHTML + "hello "+test[i];

【讨论】:

  • 谢谢!一个“+”可以真正改变应用程序,这真是太神奇了
【解决方案2】:

所有值都写入元素,但每个值都会覆盖前一个值。

收集数组中的值,并在循环后将它们全部写入元素。示例:

<div id="story"></div>
<script>
function go(){
  var test = [];
  var msg = [];
  for (i=1; i<11; i++){
    test[i]=i;
    var words = document.getElementById(test[i]).value
    msg.push("hello "+test[i]);
  }
  document.getElementById("story").innerHTML = msg.join(', ');
}
go();
</script>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-06-04
    • 2012-10-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-08
    • 1970-01-01
    相关资源
    最近更新 更多