[英]Javascript - JSON.parse: unexpected end of data - Error when using valid JSON. What am I doing wrong?
所以,我發現了類似的關於JQuery的問題,你不需要解析它。 由於我使用的是AJAX XMLHttpRequest,根據我的理解,解析是必要的。 錯誤在線上給出:
text = JSON.parse(jsonGet.responseText);
錯誤:
JSON.parse: unexpected end of data
text = JSON.parse(jsonGet.responseText);
功能的相關部分:
function populateList(){
//retrieves list from the server, adds it to the option box
if(toggle == 0){
var jsonGet = new XMLHttpRequest();
jsonGet.open("GET","./json/GetAllEvents.php",true);
jsonGet.onreadystatechange = function () {
text = JSON.parse(jsonGet.responseText); //ERROR HERE
//updating html with data received
};
jsonGet.send();
toggle = 1;
} else {}
};
返回的JSON看起來像這樣(沒有換行符):
{"success":true,
"number_of_rows":2,
"data":[
{"id":"7","event_name":null,"day":3,"start_time":510,"end_time":617},
{"id":"8","event_name":null,"day":1,"start_time":510,"end_time":617}
]}
JSONLint說上面的內容是有效的。 我想我會看看XMLHttpRequest是否做了什么奇怪的事情。 Firefox繼續運行(即使firebug顯示錯誤),但IE9此時停止了。
我很難過。 任何幫助表示贊賞。
在解析響應之前,您必須檢查jsonGet.readyState==4 && jsonGet.status==200
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.