gpt4 book ai didi

javascript - 使用来自简单数组的 javascript 创建动态 html 表

转载 作者:技术小花猫 更新时间:2023-10-29 11:55:44 27 4
gpt4 key购买 nike

我想编写一些 JavaScript 以从仅包含数字的数组创建一个简单的 HTML 表格:

var array = [1,2,3,4,5,6,7,8,9,10];

表格应该是这样的:

1 2 3 4 5
6 7 8 9 10

但是 JavaScript 代码应该是动态的,具体取决于数组的大小(尽管总是 5 倍)。

我已经尝试了很多东西,但它从来没有按照我想要的方式工作。实现这一目标的最简单方法是什么?

这是我的尝试之一。

var tableStart = "<table border>";
for (i = 0; i < arraySize/5; i++){
var tableMiddle = "<tr><td>1</td><td>2</td><td>3</td><td>4</td><td>5</td></tr>"
if (arraySize/5 >= 2) {
tableMiddle = tableMiddle + tableMiddle;
}
};
var tableEnd = "</table>";
var table = tableStart.concat(tableMiddle, tableEnd);

还有

var result = "<table border=1>";
for(var i=0; i<2; i++) {
result += "<tr>";
for(var j=0; j<array.length; j++){
result += "<td>"+array[i]+"</td>";
}
result += "</tr>";
}
result += "</table>";

这个只是导致数组的两个值被显示了很多次。

最佳答案

如果 5 的余数为零,您可以迭代数组并构建一个新行。

var array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
tr;

array.forEach((v, i) => {
var td = document.createElement('td');

if (!(i % 5)) {
tr = document.createElement('tr');
document.getElementById('table0').appendChild(tr);
}
td.appendChild(document.createTextNode(v));
tr.appendChild(td);
});
<table id="table0"></table>

关于javascript - 使用来自简单数组的 javascript 创建动态 html 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50113999/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com