2012-02-15 4 views
0

Я пытаюсь получить и разобрать JSON в JSP. URL возвращает следующий JSON строку:Как разобрать JSON, извлеченный из URL?

{"status":1,"msg":"List of Rooms","id":["1","2","3"],"name":["php","Java","myroom4"]} 

Я пытался разобрать его следующим образом:

<script type="text/javascript" charset="utf-8"> 
    $.get('url', function(data, textStatus) { 
     alert('Status is '+textStatus); 
     alert('JSON data string is: '+data); 

     var myJson = JSON.parse(data); 
     var myJson = JSON.parse(textStatus); 
     var myJsonObj = jsonParse(myJson); 

     var x=document.getElementById("Roomcount"); 
     alert(x.innerHTML); 
    }, 'text'); 
</script> 

Я не могу понять, что происходит не так.

ответ

0

Вы установили тип данных в 'text' вместо 'json'. Это не сработает. Исправить или удалить. $.get() вернет data как JSON, если заголовок Content-Type правильно установлен на стороне сервера. Предполагая, что точки URL в сервлет, вам нужно добавить эту строку перед записью в ответ:

response.setContentType("application/json"); 

Таким образом data будет напрямую быть объектом JSON уже который вы можете получить доступ к следующим:

$.get('url', function(data) { 
    alert(data.status); // 1 
    alert(data.msg); // List of rooms 
    alert(data.id); // ["1","2","3"] 
    alert(data.name); // ["php","Java","myroom4"] 
}); 
Смежные вопросы