我尝试将使用XMLHttpRequest
获取的文件的结果添加到数组中。该文件是json。
这是创建错误的代码:
var array = [];
var req = new XMLHttpRequest();
req("get", "test.json");
req.onreadystatechange = handle(req, array);
req.send();
function handle(req, array) {
if ((req.target.readyState == 4) && (req.target.status == 200)) {
var json = JSON.parse(req.target.responseText);
array.push(json.test);
alert(array);
}
}
不使用target
,其值为4
答案 0 :(得分:0)
您使用了错误的请求属性。
尝试使用onready函数进行onreadystatechange回调
var array = [];
var req = new XMLHttpRequest();
req("get", "test.json");
req.onreadystatechange = function(){
if ((req.readyState == 4) && (req.status == 200)) {
var json = JSON.parse(req.responseText);
array.push(json.test);
alert(array);
}
};
req.send();
或按照你的方式
var array = [];
var req = new XMLHttpRequest();
req("get", "test.json");
req.onreadystatechange = handle();
req.send();
function handle(){
if ((req.readyState == 4) && (req.status == 200)) {
var json = JSON.parse(req.responseText);
array.push(json.test);
alert(array);
}
};