javascript - 在 Div 内显示 JavaScript 数组元素

标签 javascript html arrays

网页中有一个文本区域,可供用户添加地址。用户可以通过单击“添加地址”按钮输入“n”个地址。当用户单击“显示地址”按钮时,输入的所有地址应按以下格式显示在“结果”div 标签内: 地址1

用户输入的地址

地址2

用户输入的地址

......

这是 HTML 代码

<div id="body" align="left">
    <h2>Address Details</h2>
    Enter the Address : <textarea id="address"></textarea><br>
    <button id="add" onclick="addAddress();">Add Address</button>
    <button id="display" onclick="displayAddress();">Display Address</button>
</div>
<div id="result" align="right"></div>

这是接受地址并将其存储在数组中的 JS 函数:

var address = [];

function addAddress(){
    var addr = document.getElementById("address");
    if(addr.value.replace(/^\s+|\s+$/gm,'') !=="") {
        address.push(addr.value);
        addr.value = ""; 
    }           
}

这里的函数以指定的格式显示结果div内的地址(这不起作用)

function displayAddress(){
    var display = [];
    var addrno = [];
    var result = document.getElementById("result");
    for(var i=0; i<address.length; i++){
        display[i] = address[i];
        addrno[i] = "Address "+(i+1);
    }
    result.innerHTML = addrno[i]+"<br>"+display[i]+"<br>";
}

任何帮助将不胜感激。

最佳答案

嗯,如果我正确理解你的问题,你可以尝试这样做:

function displayAddress(){
    var display = [];
    var addrno = [];
    var result = document.getElementById("result");
    for(var i=0; i<address.length; i++){
        display[i] = address[i];
        addrno[i] = "Address "+(i+1);
        result.innerHTML += addrno[i]+"<br>"+display[i]+"<br>";
    }
}

我所做的只是移动result.innerHTML += addrno[i]+"<br>"+display[i]+"<br>";在 for 循环中,以便它可以访问变量 i每次迭代并更改它,因此添加了字符串 addrno[i]+"<br>"+display[i]+"<br>";使用 += 到 DOM上result.innerHTML而不是= (所以它不会覆盖它,而是附加到它上面)

关于javascript - 在 Div 内显示 JavaScript 数组元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46620486/

相关文章:

javascript - Google map 无法使用 jquery 加载

html - 嵌套 Bootstrap 行和列

在c中计算数组中的相对位置

arrays - 使用来自 firebase 集合的键值对填充 react 选择选项数组

javascript - 如何在 JavaScript 中将 4 个字节组合成浮点值

javascript - PHP、JavaScript 和 MySQL : updating and passing of variables

javascript - 如何设置页面之间转换的加载图标?

html - 在 Eclipse 中缩进 <head></head> 中的标签

javascript - 使用单选按钮绘制圆形和正方形不起作用

arrays - 为什么 Go 的 strings.Fields(str) 和 strings.Split(str, "") 这么慢?