Javascript 表的Json嵌套对象数组
我有一个json文件,有一个对象数组。在第一个对象中,第二个数组包含+/-200个对象。是否可以在第一个表的最后一行的新表中显示第二个数组 如图所示,“Friends”列中应该有一个嵌套表 html是:Javascript 表的Json嵌套对象数组,javascript,json,facebook,object,multidimensional-array,Javascript,Json,Facebook,Object,Multidimensional Array,我有一个json文件,有一个对象数组。在第一个对象中,第二个数组包含+/-200个对象。是否可以在第一个表的最后一行的新表中显示第二个数组 如图所示,“Friends”列中应该有一个嵌套表 html是: <body onLoad="buildHtmlTable()"> <table id="excelDataTable" border="1"> </table> </body> 代码的其余部分是: var myList=[{ "id": "
<body onLoad="buildHtmlTable()">
<table id="excelDataTable" border="1">
</table>
</body>
代码的其余部分是:
var myList=[{
"id": "220439",
"name": "Bret Taylor",
"friends": {
"data": [
{
"id": "100003461417780",
"name": "Pedro Fernandes"
},
{
"id": "100004448132997",
"name": "Tatiane Rodrigues"
},
{
"id": "100002608573875",
"name": "Gerson Yoody"
},
{
"id": "100003532942622",
"name": "Brennen Roup"
},
{
"id": "100003910478450",
"name": "Maruxita Gomez"
},
{
"id": "100003035179424",
"name": "Ekta Vaghasia"
},
{
"id": "100003034655176",
"name": "Nikita Adam"
},
{
"id": "100004269720826",
"name": "Lukas Ks"
},
{
"id": "100004489472386",
"name": "Hong Finozaza"
},
{
"id": "1436623789",
"name": "Dianita M Ct"
},
{
"id": "100004324535652",
"name": "Ana Paula"
},
{
"id": "100004433135086",
"name": "Caroline Geovannini"
},
{
"id": "100004081013147",
"name": "Ryan Bispo Silva"
},
{
"id": "1697844686",
"name": "Louann Hyatt Clark"
},
{
"id": "100003283377051",
"name": "Ysabel Salazar"
},
{
"id": "100003398360349",
"name": "Ty SoHigh Walker"
},
{
"id": "100001201489463",
"name": "Dicu Andrei D"
},
{
"id": "100001811128458",
"name": "Cristy Torres Castellanos"
},
{
"id": "1693121601",
"name": "Jasim Amit"
},
{
"id": "100001966217366",
"name": "Candy Chhokar"
},
{
"id": "100004096284395",
"name": "Stefania Bilska"
},
{
"id": "100004084157244",
"name": "Papah Noval"
},
{
"id": "1791202672",
"name": "Bianca Agostina Gherardini"
},
{
"id": "100000825894241",
"name": "Usman Faiz"
},
{
"id": "100002424916440",
"name": "Muhammad Tajminur Rahman"
}
],
"paging": {
"next": "https://graph.facebook.com/99394368305/likes?limit=25&after=MTAwMDAyNDI0OTE2NDQw"
}
}
}];
// Builds the HTML Table out of myList json data from Ivy restful service.
function buildHtmlTable() {
var columns = addAllColumnHeaders(myList);
for (var i = 0 ; i < myList.length ; i++) {
var row$ = $('<tr/>');
for (var colIndex = 0 ; colIndex < columns.length ; colIndex++) {
var cellValue = myList[i][columns[colIndex]];
if (cellValue == null) { cellValue = ""; }
row$.append($('<td/>').html(cellValue));
}
$("#excelDataTable").append(row$);
}
}
// Adds a header row to the table and returns the set of columns.
// Need to do union of keys from all records as some records may not contain
// all records
function addAllColumnHeaders(myList)
{
var columnSet = [];
var headerTr$ = $('<tr/>');
for (var i = 0 ; i < myList.length ; i++) {
var rowHash = myList[i];
for (var key in rowHash) {
if ($.inArray(key, columnSet) == -1){
columnSet.push(key);
headerTr$.append($('<th/>').html(key));
}
}
}
$("#excelDataTable").append(headerTr$);
return columnSet;
}
var myList=[{
“id”:“220439”,
“姓名”:“Bret Taylor”,
“朋友”:{
“数据”:[
{
“id”:“100003461417780”,
“姓名”:“佩德罗·费尔南德斯”
},
{
“id”:“10000448132997”,
“姓名”:“塔蒂安·罗德里格斯”
},
{
“id”:“10000268573875”,
“姓名”:“Gerson Yoody”
},
{
“id”:“100003532942622”,
“名称”:“布伦南集团”
},
{
“id”:“100003910478450”,
“名称”:“Maruxita Gomez”
},
{
“id”:“100003035179424”,
“名称”:“Ekta Vaghasia”
},
{
“id”:“100003034655176”,
“姓名”:“Nikita Adam”
},
{
“id”:“100004269720826”,
“名称”:“卢卡斯Ks”
},
{
“id”:“100004489472386”,
“名称”:“Hong Finozaza”
},
{
“id”:“1436623789”,
“名称”:“Dianita M Ct”
},
{
“id”:“1000043253552”,
“姓名”:“安娜·保拉”
},
{
“id”:“10000443313586”,
“姓名”:“Caroline Geovannini”
},
{
“id”:“10000481013147”,
“姓名”:“Ryan Bispo Silva”
},
{
“id”:“1697844686”,
“姓名”:“卢安凯悦克拉克”
},
{
“id”:“10000328377051”,
“名称”:“伊萨贝尔·萨拉扎”
},
{
“id”:“10000398360349”,
“姓名”:“Ty SoHigh Walker”
},
{
“id”:“10000201489463”,
“名称”:“Dicu Andrei D”
},
{
“id”:“100001811128458”,
“姓名”:“克里斯蒂·托雷斯·卡斯特拉诺斯”
},
{
“id”:“1693121601”,
“姓名”:“Jasim Amit”
},
{
“id”:“100001966217366”,
“名称”:“Candy Chhokar”
},
{
“id”:“10000496284395”,
“姓名”:“Stefania Bilska”
},
{
“id”:“10000484157244”,
“名称”:“新教皇”
},
{
“id”:“1791202672”,
“姓名”:“Bianca Agostina Gherardini”
},
{
“id”:“10000825894241”,
“姓名”:“乌斯曼·费兹”
},
{
“id”:“100002494916440”,
“姓名”:“穆罕默德·塔吉米努尔·拉赫曼”
}
],
“分页”:{
“下一步”:https://graph.facebook.com/99394368305/likes?limit=25&after=MTAwMDAyNDI0OTE2NDQw"
}
}
}];
//从Ivy restful服务的myList json数据构建HTML表。
函数buildHtmlTable(){
var columns=addAllColumnHeaders(myList);
对于(变量i=0;i
(数据来自facebook graph api)您可以通过以下方式访问内部数据:myList[0].friends.data[i].id和myList[0].friends.data[i].name,只需迭代到myList[0].friends.data.length,并构建您想要的任何结构-例如,使用两个td为每个朋友创建表行-一个用于id,一个用于名称-
for(var x=0;x
您可以通过以下方式访问内部数据:myList[0].friends.data[i].id和myList[0].friends.data[i].name,只需迭代,直到达到myList[0].friends.data.length,然后构建您想要的任何结构-例如,为每个朋友创建表行,其中两个td-一个用于id,一个用于name谢谢!!这对我帮助很大!
for (var x = 0 ; x < myList[0].friends.data.length ; x++){
$line.append( $( "<td></td>" ).html( myList[0].friends.data[x].id ) );
}