2013-03-18 52 views
0

我试图用这个JSON来显示数据,并从“联系人”重点打造一个下拉菜单的价值观,我不明白这一个:解析嵌套的JSON来显示数据

JSON数据:

data =  [ 
    {"conta":"13356","name":"MISS Two"}, 
    {"zip":"01111","city":"NASHUA, MA","street_a":"10 MAIN ROAD SQUARE","street_b":"Nothing"}, 
    {"count":"544","number":"250"}, 
[ 
    {"contact":"Mark Bre"}, 
    {"contact":"Mary Lou"}, 
    {"contact":"John Ton"}, 
    {"contact":"Carls Des"}, 
    {"contact":"Carlos Drt"} 
] 
] 

任何帮助,感谢您的期待!

回答

0

使用递归的方式遍历数据; jsfiddle

function showData(obj){ 
    for(var k in obj){ 
     if($.isArray(obj[k])){ 
      showData(obj[k]); 
     } 
     else{ 
      for(var l in obj[k]){ 
       $('body').append(obj[k][l]+ " ");    
      } 
      $('body').append("<br>"); 
      console.log(obj[k]); 
     } 
    } 
} 
+0

我不能让这段代码工作,我该如何在页面上显示下拉菜单? – Andre 2013-03-18 23:45:42

0

创建select..append到你想要的元素(我追加到身体)通过你的数据... ..循环创建选项AMD追加到创建的动态选择

试试这个

$('body').append('<select id="dynamicSelect"></select>'); 
var options=""; 
$.each(data,function(i1,val1){ 
     if($.isArray(val1)){ 
      $.each(data,function(i2,val2){ 
       options += "<option value="+ val2.contact +">" + val2.contact + "</option>" 
      }); 
     } 
    } 
$('#dynamicSelect').append(options);