So, I've found similar questions about JQuery in which you do not need to parse. Since I am using the AJAX XMLHttpRequest, from what I understand, the parse is necessary. The error is given on the line:
text = JSON.parse(jsonGet.responseText);
Error:
JSON.parse: unexpected end of data
text = JSON.parse(jsonGet.responseText);
Relevant parts of the function:
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 {}
};
The JSON returned looks like this (without the line breaks):
{"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 says that the above is valid. I guess I will take a look into whether XMLHttpRequest does anything strange. Firefox continues to function (even though firebug shows the error), IE9 stops at this point though.
I'm pretty stumped. Any help is appreciated.