动态JSON数据中的Jquery循环
惠。。如果这个问题已经被问到了,我很抱歉。我正在尝试使用javascript/jquery遍历JSON数据。JSON数据是使用“$.getJson”函数检索的。我的问题是JSON数据将具有无限的深度。很抱歉提这么短的问题。谢谢动态JSON数据中的Jquery循环,jquery,json,loops,Jquery,Json,Loops,惠。。如果这个问题已经被问到了,我很抱歉。我正在尝试使用javascript/jquery遍历JSON数据。JSON数据是使用“$.getJson”函数检索的。我的问题是JSON数据将具有无限的深度。很抱歉提这么短的问题。谢谢 { "title": "perkhidmatan utama agensi", "description": "", "layout": "1", "likerscale": "", "elemen": [ {
{
"title": "perkhidmatan utama agensi",
"description": "",
"layout": "1",
"likerscale": "",
"elemen": [
{
"title": "Sila tandakan dan nyatakan lokasi di mana Tuan/Puan menerima perkhidmatan. (Ibu Pejabat/Negeri/Cawangan)",
"elemen": [
{
"title": "lokasi perkhidmatan",
"description": "",
"elemen": [
{
"title": "ibu pejabat",
"checkbox": "1",
"radio": "0",
"input": "0",
"textarea": "0",
"select": "0"
},
{
"title": "Negeri/Cawangan (Sila nyatakan)",
"checkbox": "1",
"radio": "0",
"input": "1",
"textarea": "0",
"select": "0"
}
]
}
]
},
{
"title": "Sila tandakan (<span class='icon icone-check'></span>) pada mana-mana ruangan berkenaan mengenai jenis perkhidmatan utama agensi ini yang pernah anda berurusan",
"elemen": [
{
"title": "perkhidmatan utama JPN",
"description": "",
"elemen": [
{
"title": "Kad Pengenalan",
"checkbox": "1",
"radio": "0",
"input": "0",
"textarea": "0",
"select": "0"
},
{
"title": "Kelahiran, Kematian dan Anak Angkat",
"checkbox": "1",
"radio": "0",
"input": "0",
"textarea": "0",
"select": "0"
},
{
"title": "Kewarganegaraan",
"checkbox": "1",
"radio": "0",
"input": "0",
"textarea": "0",
"select": "0"
},
{
"title": "Perkahwinan dan Perceraian",
"checkbox": "1",
"radio": "0",
"input": "0",
"textarea": "0",
"select": "0"
},
{
"title": "Lain-lain",
"checkbox": "1",
"radio": "0",
"input": "0",
"textarea": "0",
"select": "0"
}
]
}
]
}
]
}
{
“标题”:“乌塔马省政府”,
“说明”:“,
“布局”:“1”,
“likerscale”:“,
“埃莱门”:[
{
“头衔”:“我的家人和家人在我的家里过得很好。”,
“埃莱门”:[
{
“头衔”:“lokasi Perkhimatan”,
“说明”:“,
“埃莱门”:[
{
“头衔”:“ibu pejabat”,
“复选框”:“1”,
“收音机”:“0”,
“输入”:“0”,
“文本区域”:“0”,
“选择”:“0”
},
{
“标题”:“内盖里/卡旺甘(西拉尼亚塔坎)”,
“复选框”:“1”,
“收音机”:“0”,
“输入”:“1”,
“文本区域”:“0”,
“选择”:“0”
}
]
}
]
},
{
“标题”:“我们需要更多的力量来帮助我们建立一个新的机构”,
“埃莱门”:[
{
“标题”:“perkhidmatan utama JPN”,
“说明”:“,
“埃莱门”:[
{
“标题”:“卡德·彭吉纳兰”,
“复选框”:“1”,
“收音机”:“0”,
“输入”:“0”,
“文本区域”:“0”,
“选择”:“0”
},
{
“标题”:“Kelahiran、Kematian和Anak Anggat”,
“复选框”:“1”,
“收音机”:“0”,
“输入”:“0”,
“文本区域”:“0”,
“选择”:“0”
},
{
“标题”:“Kewarganegaraan”,
“复选框”:“1”,
“收音机”:“0”,
“输入”:“0”,
“文本区域”:“0”,
“选择”:“0”
},
{
“头衔”:“Perkahwinan dan Perceranian”,
“复选框”:“1”,
“收音机”:“0”,
“输入”:“0”,
“文本区域”:“0”,
“选择”:“0”
},
{
“头衔”:“莱恩莱恩”,
“复选框”:“1”,
“收音机”:“0”,
“输入”:“0”,
“文本区域”:“0”,
“选择”:“0”
}
]
}
]
}
]
}
这里需要一个递归函数,这应该可以做到:
var data = yourJsonArray;
function drillDownArray(data) {
// Main attributes
var title = data.title;
var description = data.description;
$.each(data.elemen, function(i, v) {
// Each element
var title = v.title;
drillDownArray(v);
}
}
drillDownArray(data);
你想在迭代中做什么?已经说过无数次了,但是你能提供代码或任何你尝试过的东西吗?可能是@ArunPJohny的重复我只想为每个“elemen”创建一个嵌套框。我所需要的只是一个可以循环JSON并打印字符串的函数。@FelixKling我想打印所有的值,而不是在这里访问特定的值。但是谢谢你的链接:)谢谢你的代码。您的代码在我的浏览器控制台“UncaughtTypeError:无法读取未定义的”属性“length”中返回一个错误。您可以使用此属性对当前代码进行JSFIDLE吗?我会帮你修好的。