此问题已在此处找到答案:
使用jquery和json数组创建html表(2个答案)
两天前关门了。
我当前正在尝试从数组创建表。数组的格式如下所示:
[
{
header: 'ID',
values: [1, 2]
},
{
header: 'First Name',
values: ['John', 'Jayne']
},
{
header: 'Last Name',
value: ['Doe', 'Doe']
}
]
我已经成功地创建了表的标题,但是对于从这个数组以这种方式从主体中进行渲染的位置或方式有点困惑。
const exampleArray = [
{
header: 'ID',
values: [1, 2]
},
{
header: 'First Name',
values: ['John', 'Jayne']
},
{
header: 'Last Name',
values: ['Doe', 'Doe']
}
];
const header = $('#results thead tr');
const body = $('#results tbody');
exampleArray.forEach((row) => {
header.append(
$(`<th>${row.header}</th>`)
);
});
<table id="results">
<thead>
<tr>
<!-- HEADERS -->
</tr>
</thead>
<tbody>
</tbody>
</table>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
我不确定这是否是最好的方法,也不确定是否值得在尝试呈现表之前将结果集Map为更可变的内容。
3条答案
按热度按时间edqdpe6u1#
您可以调用中的元素
exampleArray
行,而它们实际上是列。这可能是产生混淆的原因。请参阅下面的代码片段以了解工作示例。qkf9rpyu2#
只需迭代数组的每个值项并将其附加到每列:
jv4diomz3#
你可以使用
for
循环进行迭代0
长到values
属性,并使用嵌套循环在每个单独项的索引处获取该项: