【问题标题】:How to append array elements to div?如何将数组元素附加到div?
【发布时间】:2012-08-30 20:21:46
【问题描述】:

我一直在尝试进行更改,因此我从输入表单中获得了推送,但没有运气。

<form id="myform">
    <input id="type" type="text" name="input">
    <button onclick="myFunction()">Add number</button>
</form>
<br>
<div id="box"; style="border:1px solid black;width:150px;height:150px;overflow:auto">
</div>
<script>
    var number= [];
    function myFunction()
    {
        number.push= document.getElementById("type").value;
        var x=document.getElementById("box");
        x.innerHTML=number.join('<br/>');
    }
</script>

【问题讨论】:

    标签: javascript html arrays string dom


    【解决方案1】:

    你需要转换数组,比如:

    x.innerHTML=number.join(",");
    

    还有:

    var x = document.getElementById("box");
    

    【讨论】:

    • Array 有 toString() 能力所以不需要。
    • toString 在分配给字符串属性时被隐式调用,join 仅在需要默认格式以外的格式时才需要。
    • 最好的方法是与现场评估员一起检查。感到内疚,因为没有时间修复一些功能(现在可能还有更好的功能),但我仍然发现单击工具栏按钮以让实时 HTML 编辑器随时在 Ted 的 @ 中工作很有帮助987654321@分机号。
    【解决方案2】:

    替换:

    var x = document.getElementById("demo");
    

    与:

    var x = document.getElementById("box");
    

    如果你想将你的数组转换成字符串,你可以使用javascript函数join():

    x.innerHTML = number.join(',');
    // Or
    x.innerHTML = number.toString();
    

    这是你想要的吗?

    【讨论】:

    • 哦,谢谢你解决了我想作为数组离开的问题,因为我想添加一个 for 循环,所以每个输入都将放在一个新行上,只是不确定如何添加它,对于(int i=o, i;
    • 您希望每个项目都换行,对吗?不需要for 循环。只需将:x.innerHTML = number.join(','); 替换为 x.innerHTML = number.join('&lt;br /&gt;');。很简单。
    • 好的,所以我的脑袋快要爆炸了,可以说我想从输入表单中获取推送号码,我已经尝试将它链接在一起几个小时但没有运气,我已经删除了我的大部分努力请留下输入博任何帮助
    • 你可以用这个呐? number.push(document.myform.input.value)
    • 有道理,但不工作我可能会缺少引号或简单的东西
    【解决方案3】:
    var arr = [];
    
    function func () {
      arr.push('5');
      document.getElementById('box').innerHTML = arr.toString();
    }
    

    【讨论】:

    • 不需要调用toString,赋值给字符串属性会隐式调用toString
    猜你喜欢
    • 2021-04-18
    • 2017-07-10
    • 1970-01-01
    • 2021-07-04
    • 2015-01-23
    • 2015-10-02
    • 1970-01-01
    • 2018-08-18
    • 2014-02-24
    相关资源
    最近更新 更多