【问题标题】:Display corresponding parallel array value to html将对应的并行数组值显示到 html
【发布时间】:2020-05-09 00:16:00
【问题描述】:

我目前有两个数组,nameArray 和 markArray,当用户输入他们的名字和标记时会添加它们。我想在单击按钮时显示所有名称和标记,但有什么标记属于谁显而易见。我的尝试低于创建 displayInfo 但每当我尝试将其输出到 HTML 时,它只显示每个数组中的最后一个。


    if (Array.isArray(nameArray) && nameArray.length) {

        console.log("display all working");
       // var displayName = nameArray.toString();
        // var displayMark = markArray.toString();

        for(let i=0; i < nameArray.length; i++){

            var displayInfo = "";

            //var displayInfo = nameArray[i] + "<br/>" + markArray[i];
            //console.log(displayInfo)
            //document.getElementById("result").innerHTML = displayInfo;

            displayInfo += nameArray[i] + "<br/>" + markArray[i] + "";

        }

            document.getElementById("result").innerHTML = displayInfo

    }else{

        document.getElementById("result").innerHTML = "No result's have been entered! Please enter results before display them!"
    }


} ```

var name = document.getElementById("name").value;
var mark = document.getElementById("mark").value;

if(name == "" || mark == ""){

    document.getElementById("result").innerHTML = "An input field is empty please try again."

}else{

nameArray.push(name);
markArray.push(mark);

console.log(nameArray);

document.getElementById("result").innerHTML = name + "'s " + "results have been added to the system!"

}

}```

输出应该看起来像 John-4 Jack-6,只要能清楚地知道它是谁的结果。

【问题讨论】:

  • 向我们展示您的阵列是什么样的以及您的预期输出是什么样的,这将使我们更容易提供帮助

标签: javascript html arrays


【解决方案1】:
if (Array.isArray(nameArray) && nameArray.length) {

    console.log("display all working");
    var displayInfo = [];
   // var displayName = nameArray.toString();
    // var displayMark = markArray.toString();

    for(let i=0; i < nameArray.length; i++){


        //var displayInfo = nameArray[i] + "<br/>" + markArray[i];
        //console.log(displayInfo)
        //document.getElementById("result").innerHTML = displayInfo;

        displayInfo.push(nameArray[i] + "<br/>" + markArray[i] + "");

    }
       displayInfo.forEach(single => {
            document.getElementById("result").innerHTML = single; 
       })



}else{

    document.getElementById("result").innerHTML = "No result's have been entered! Please enter results before display them!"
}

在循环结束之前,您将覆盖循环内的变量,这就是您获得数组最后一个元素的原因。试试我的代码。

【讨论】:

  • 我更新了代码,它仍然在做同样的事情,我也更新了代码。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-04-24
  • 1970-01-01
  • 1970-01-01
  • 2021-12-20
  • 1970-01-01
相关资源
最近更新 更多