在动态表javascript中显示对象数组 [英] display array of objects in a dynamic table javascript
本文介绍了在动态表javascript中显示对象数组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想使用 javascript 在动态表中显示一组对象.
I want to display an array of objects in a dynamic table using javascript.
var rows=[{ name : "John", age:20, email: "xx@hotmail.com"},
{ name : "Jack", age:50, email: "xxx@hotmail.com"},
{ name : "Son", age:45, email: "xxxx@hotmail.com"}
........................etc
];
这是它的外观.我想知道如何将其显示为动态表.
This is how it looks.I want to know how can I show this as a dynamic table.
推荐答案
这就是你的做法:
Javascript 解决方案:
var rows = [{
name: "John",
age: 20,
email: "xx@hotmail.com"
}, {
name: "Jack",
age: 50,
email: "xxx@hotmail.com"
}, {
name: "Son",
age: 45,
email: "xxxx@hotmail.com"
}];
var html = "<table border='1|1'>";
for (var i = 0; i < rows.length; i++) {
html+="<tr>";
html+="<td>"+rows[i].name+"</td>";
html+="<td>"+rows[i].age+"</td>";
html+="<td>"+rows[i].email+"</td>";
html+="</tr>";
}
html+="</table>";
document.getElementById("box").innerHTML = html;
jQuery 解决方案:
var rows = [{
name: "John",
age: 20,
email: "xx@hotmail.com"
}, {
name: "Jack",
age: 50,
email: "xxx@hotmail.com"
}, {
name: "Son",
age: 45,
email: "xxxx@hotmail.com"
}];
$(document).ready(function () {
var html = "<table border='1|1'>";
for (var i = 0; i < rows.length; i++) {
html+="<tr>";
html+="<td>"+rows[i].name+"</td>";
html+="<td>"+rows[i].age+"</td>";
html+="<td>"+rows[i].email+"</td>";
html+="</tr>";
}
html+="</table>";
$("div").html(html);
});
jQuery 解决方案 2:
var rows = [{
name: "John",
age: 20,
email: "xx@hotmail.com"
}, {
name: "Jack",
age: 50,
email: "xxx@hotmail.com"
}, {
name: "Son",
age: 45,
email: "xxxx@hotmail.com"
}];
const Array2Table = (arr) => {
let Table = [];
let top_row = [];
let rows = [];
for (let i = 0; i < arr.length; i++) {
let cells = [];
for (let property in arr[i]) {
if (top_row.length < Object.keys(arr[i]).length) {
top_row.push(`<th scope="col">${property}</th>`);
}
if (arr[i][property] === null) {
cells.push(`<td>${null}</td>`);
} else {
cells.push(`<td>${arr[i][property]}</td>`);
}
}
rows.push(`<tr>${cells.join("")}</tr>`);
}
Table.push(`<table class="table card-table table-striped">`);
Table.push(`<thead>${top_row.join("")}</thead>`);
Table.push(`<tbody>${rows.join("")}<tbody>`);
Table.push("</table>");
return Table.join("");
}
$(function() {
let html = Array2Table(rows);
$("div").html(html);
});
这篇关于在动态表javascript中显示对象数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文