2013-07-18 3 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>"); 
}); 

я получаю одну строку. Вы хотите отобразить все строки данные ['results'] [0] ['file'].

+0

Может вам отправить пример JSON? –

+0

Возможный дубликат [Доступ/процесс (вложенные) объекты, массивы или 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(", ")); 
}); 
Смежные вопросы