带jQuery的嵌套json:创建嵌套项列表
我有一个JSON:带jQuery的嵌套json:创建嵌套项列表,jquery,json,list,mobile,Jquery,Json,List,Mobile,我有一个JSON: { "fakultaeten": [ { "id": "1", "name": "Carl-Friedrich Gauß", "institut": [ { "Mathematik": [ { "Verbra
{
"fakultaeten": [
{
"id": "1",
"name": "Carl-Friedrich Gauß",
"institut": [
{
"Mathematik": [
{
"Verbrauch": "852 kWH",
"Effizienz": "5,5"
}
],
"Informatik": [
{
"Verbrauch": "852 kWH",
"Effizienz": "5,5"
}
],
"Wirtschaftswissenschaften": [
{
"Verbrauch": "852 kWH",
"Effizienz": "5,5"
}
],
"Sozialwissenschaften": [
{
"Verbrauch": "852 kWH",
"Effizienz": "5,5"
}
]
}
],
"verbrauch": "852 kWH"
}
]
}
我想创建“institut”中所有项目的列表,如下所示:
- 马蒂马蒂克
- Infomratik
- Wirtschaftswissenschaften
- 等
$.each(data.fakultaeten, function(key,value)
{
var mother = "<li id='first'>"+value.name+"<ul>";
$.each(value.institut, function(key1, value1)
{
// create the list here
});
})
$.each(data.fakultaeten,函数(键,值)
{
var mother=“”+value.name+“”;
$.each(value.institut,函数(键1,值1)
{
//在这里创建列表
});
})
结果仅为:[对象]
我的解决方案有什么问题?您的问题是
institut
是一个包含单个对象的数组,因此您可以使用institut[0]
引用该单个对象
这将有助于:
$.each(data.fakultaeten, function (key, value) {
var mother = "<li id='first'>" + value.name + "<ul>";
$.each(value.institut[0], function (key1, value1) {
alert(key1);
});
});
$.each(data.fakultaeten,函数(键,值){
var mother=“”+value.name+“”;
$.each(value.institut[0],函数(键1,值1){
警报(按键1);
});
});
试试这个:
$.each(data.fakultaeten, function (key, value) {
var mother = "<li id='first'>" + value.name + "<ul>";
$.each(value.institut[0], function (key1, value1) {
console.log(key1); // key1 gives you output that you want
});
});
$.each(data.fakultaeten,函数(键,值){
var mother=“”+value.name+“”;
$.each(value.institut[0],函数(键1,值1){
console.log(key1);//key1提供您想要的输出
});
});
你真的有JSON吗?或者你只是有一个javascript对象?我不认为是,如果你从一个异步调用中获取数据
,它很可能是一个javascript对象。JSON只能是一个字符串,如果你有一个字符串,那么你应该用JSON.parse(jsonString)
解析它,但我没有把它放在这里,因为这不是我问题的一部分。你说“我有这个JSON”。。。如果您已经将它作为一个对象,并且不想显示解析,那么就不需要提及JSON。你只是把情况弄糊涂了。此外,代码的哪一部分不起作用?不管怎样,我只是添加了JSON信息,因为我认为这可能很重要。如果不是-忽略它:)