簡體   English   中英

Javascript - JSON.parse:意外的數據結束 - 使用有效JSON時出錯。 我究竟做錯了什么?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM