2012-02-15 111 views
0

我想在JSP中檢索和解析JSON。該URL返回以下JSON字符串:如何解析從URL檢索的JSON?

{"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'。這是行不通的。修復或刪除它。如果在服務器端正確設置了Content-Type標頭,則$.get()將返回data作爲JSON。假設URL指向一個servlet,你需要寫響應之前添加此行:

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"] 
});