2013-07-18 202 views
0

这是我的问题的实质: 有必要列出所有 “文件”:解析JSON响应的JavaScript

{ 
    "results": [{ 
     "fromuserid": "Anonymous", 
     "touserid": "sd68Kbmc02", 
     "file": "943easd709bfb2f6", 
     "subject": "test", 
     "message": "ddd", 
     "createdAt": "2013-07-18T20:16:08.023Z", 
     "updatedAt": "2013-07-18T20:16:08.023Z", 
     "objectId": "bRDvHb4X4M" 
    }, { 
     "fromuserid": "Anonymous", 
     "touserid": "sd68Kbmc02", 
     "file": "ef763asd134a8125", 
     "subject": "test", 
     "message": "ddd", 
     "createdAt": "2013-07-18T20:13:56.997Z", 
     "updatedAt": "2013-07-18T20:13:56.997Z", 
     "objectId": "GaLWnbSFtg" 
    }, { 
     "fromuserid": "Anonymous", 
     "touserid": "sd68Kbmc02", 
     "file": "5e7ae0sd5f1b48d0", 
     "subject": "etesrtes", 
     "message": "dfv fv f", 
     "createdAt": "2013-07-18T16:09:20.403Z", 
     "updatedAt": "2013-07-18T16:09:20.403Z", 
     "objectId": "X83Qd7ctwi" 
    }] 
} 

我用:

$.getJSON("http://domain.me/user/show_user/name/?callback=?", function(data) { 
    $('#tile').html("<a href='http://domain.me/?img=" + data['results'][0]['file'] + "' target='_blank'><img src='http://domain.me/" + data['results'][0]['file'] + ".jpg'/></a>"); 
}); 

我得到一条线。 要显示所有行data ['results'] [0] ['file']

+0

你能发布一个JSON的例子? –

+0

[Access/process(嵌套)对象,数组或JSON]的可能重复(http://stackoverflow.com/questions/11922383/access-process-nested-objects-arrays-or-json) –

回答

1
$.getJSON("http://domain.me/user/show_user/name/?callback=?", 
    function(data) 
     { 
      var results = []; 
      $.each(data['results'], function(i, result) { 
      results.push("<a href='http://domain.me/?img=" + result['file'] + "' target='_blank'><img src='http://domain.me/" + result['file'] + ".jpg'/></a>"); 
      }); 
      $('#tile').html(results.join("")); 
     } 
); 
0

你必须解析,并通过您解析JSON数据,有事的元素循环中,您可以轻松地Array.map()做(这是支持所有浏览器,但IE < 9):

$.getJSON("http://domain.me/user/show_user/name/?callback=?", function(data) { 
    var html = data.results.map(function(item, index, array) { 
     return array[index].file; 
    }); 
    $('#tile').html(html.join(", ")); 
});