-1

惠..如果这个问题已经问过了,我很抱歉。我正在尝试使用 javascript/jquery 遍历 JSON 数据。JSON 数据是使用 '$.getJson' 函数检索的。我的问题是 JSON 数据将具有无限深度。很抱歉这个简短的问题。谢谢

{
    "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"
                        }
                    ]
                }
            ]
        }
    ]
}
4

1 回答 1

1

您在这里需要一个递归函数,应该这样做:

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);
于 2013-04-25T13:11:58.123 回答