如何以表格格式显示json数组
How to display a json array in table format?
我有一个json数组,格式如下:
[
{
id : "001",
name : "apple",
category : "fruit",
color : "red"
},
{
id : "002",
name : "melon",
category : "fruit",
color : "green"
},
{
id : "003",
name : "banana",
category : "fruit",
color : "yellow"
}
]
现在,我想在Javascript或jQuery中解析并以表格格式显示它。该表有四列,每列表示该数组中每个元素的每个属性。这个表的第一行是这四个键的名称。其他行是这些键的值。
我不知道如何编写JavaScript代码来实现这个功能。你能帮我做这个吗?
DEMO
var obj=[
{
id : "001",
name : "apple",
category : "fruit",
color : "red"
},
{
id : "002",
name : "melon",
category : "fruit",
color : "green"
},
{
id : "003",
name : "banana",
category : "fruit",
color : "yellow"
}
]
var tbl=$("<table/>").attr("id","mytable");
$("#div1").append(tbl);
for(var i=0;i<obj.length;i++)
{
var tr="<tr>";
var td1="<td>"+obj[i]["id"]+"</td>";
var td2="<td>"+obj[i]["name"]+"</td>";
var td3="<td>"+obj[i]["color"]+"</td></tr>";
$("#mytable").append(tr+td1+td2+td3);
}
使用jquery $.each
,您可以访问所有数据,也可以在类似的表中进行设置
<table style="width: 100%">
<thead>
<tr>
<th>Id</th>
<th>Name</th>
<th>Category</th>
<th>Color</th>
</tr>
</thead>
<tbody id="tbody">
</tbody>
</table>
$.each(data, function (index, item) {
var eachrow = "<tr>"
+ "<td>" + item[1] + "</td>"
+ "<td>" + item[2] + "</td>"
+ "<td>" + item[3] + "</td>"
+ "<td>" + item[4] + "</td>"
+ "</tr>";
$('#tbody').append(eachrow);
});
var jArr = [
{
id : "001",
name : "apple",
category : "fruit",
color : "red"
},
{
id : "002",
name : "melon",
category : "fruit",
color : "green"
},
{
id : "003",
name : "banana",
category : "fruit",
color : "yellow"
}
]
var tableData = '<table><tr><td>Id</td><td>Name</td><td>Category</td><td>Color</td></tr>';
$.each(jArr, function(index, data) {
tableData += '<tr><td>'+data.id+'</td><td>'+data.name+'</td><td>'+data.category+'</td><td>'+data.color+'</td></tr>';
});
$('div').html(tableData);
var data = [
{
id : "001",
name : "apple",
category : "fruit",
color : "red"
},
{
id : "002",
name : "melon",
category : "fruit",
color : "green"
},
{
id : "003",
name : "banana",
category : "fruit",
color : "yellow"
}
];
for(var i = 0, len = data.length; i < length; i++) {
var temp = '<tr><td>' + data[i].id + '</td>';
temp+= '<td>' + data[i].name+ '</td>';
temp+= '<td>' + data[i].category + '</td>';
temp+= '<td>' + data[i].color + '</td></tr>';
$('table tbody').append(temp));
}
相关文章:
- 如何在ReactJs中显示Json数据
- 动态显示JSON文件内容
- 在模板angular 2中显示JSON对象
- 使用Angular显示JSON中的HTML
- 显示JSON数据中的图像
- 在Ionic'中显示JSON结果;s系列重复
- PHP/JQUERY-显示json的每个子数组
- 如何使用jQuery显示JSON数据
- 在freemarker中显示JSON文本
- 显示json文件中的数据
- 在knocket js中显示json对象的详细信息
- 无法在AJAX成功访问中显示JSON结果
- 显示 JSON 将不起作用
- 尝试使用 AngularJS ng-repeat 显示 JSON 数据不起作用
- 如何在jqgrid中显示json数组值
- 如何在视图中显示json返回的linq列表
- 如何在剑道网格中显示JSON响应
- 让Angular.js显示json数据的html列表
- 在DataTables上显示Json数据
- 如何根据叶值显示JSON树中的特定路径