2010-09-03 2 views
1

Каков наилучший способ получить ответ json в массив, который я могу использовать в приведенном ниже примере? Это моя функция, которая вызывает вызывает Аякса вызов:Ответ json в массив

function getMaps(){ 

    mapID = "aus"; 
    mapImg = 'map_australia.jpg'; 

    $.ajax({ 
     type: "GET", 
     url: "getMap.asp", 
     data: "id=" + mapID, 
     contentType: "application/json; charset=utf-8", 
     dataType: "json", 
     success: function(response) { 

      //not sure what to do here   
     } 

     }); 
     return //not sure what to return here 
     // it should resemble: return {id: 'aus', image: '/resources/images/maps/map_australia.jpg', data: '', maps: []}; 

}; 

Для целей тестирования getMap.asp отправляет обратно происходит некорректно:

{'j':[{'id':'aus','image':'/images/maps/map_detail.jpg','data':'','maps':[]}]} 
+0

Вы не хотите возвращать массив, а объект. – BoltClock

ответ

1
return JSON.parse(response); 

Если вы спрашиваете о том, как обрабатывать асинхронный ответ, вам необходимо реструктурировать код, вызывающий getMaps, так как он не может напрямую вернуть ответ. Вместо этого вы должны принять обратный вызов в качестве аргумента.

Смежные вопросы