我正在处理HTML页面。我需要用包含一些数据的JSON文件填充页面。
JSON文件的结构类似于以下内容:
{
"City": {
"header": {
"first_item" : "item1",
"second_item" : "item2",
...
}
"Tab1": {
"A": [{
"name": "name",
"mail": "..."
},
{
"name": "name",
"mail": "..."
}
],
"B": [{
"name": "name",
"mail": "..."
},
{
"name": "name",
"mail": "..."
}
],
},
"Tab2": {
"A": [{
"name": "name",
"mail": "..."
},
{
"name": "name",
"mail": "..."
}
],
"B": [{
"name": "name",
"mail": "..."
},
{
"name": "name",
"mail": "..."
}
],
}
我的JSON文件确实比此示例大,但全局结构在这里。 (有55个城市,每个城市3个标签,每个标签中包含更多字母和数据)。
当前,我可以使用:p显示JSON文件的一部分内容。
jsonObj["City"].Tab1.A[i].name
jsonObj["City"].Tab1.A[i].mail
但是,我正在寻找一种解决方案,该解决方案可以让我通过A,B,C等进行for循环,从而可以自动给出以下代码的结果:
jsonObj["City"].Tab1.A[i].name
jsonObj["City"].Tab1.A[i].mail
jsonObj["City"].Tab1.B[i].name
jsonObj["City"].Tab1.B[i].mail
jsonObj["City"].Tab1.C[i].name
jsonObj["City"].Tab1.C[i].mail
即使我知道这里缺少什么,我也尝试将A,B,C ...存储在数组中,但是由于JSON数据中有任何“ myArray”,所以我无法访问此类数据。用这种代码:
var myArray = ["A","B","C", ...];
for(var i = 0; i < myArray.length; i++){
jsonObj["City"].Tab1.myArray[i].name
jsonObj["City"].Tab1.myArray[i].mail
}
我尝试这样做是为了得到结果:
jsonObj["City"].Tab1.myArray[i].name
等同于:
jsonObj["City"].Tab1.A[i].name
但是在这里,我只是(通过推论):
jsonObj["City"].Tab1.A.name
我不知道该修改代码还是修改JSON结构更好...
任何帮助将不胜感激
提前谢谢!