我想调用一个ajax请求,直到它返回一个真正的值。我已经尝试了下面的代码,但它不会在控制台中返回任何结果和错误。任何想法我做错了什么?重复函数,直到true
function getUserData() {
var xhr = new XMLHttpRequest();
xhr.open("GET", "http://api.example.com/data.json", true);
xhr.onreadystatechange = function() {
if (xhr.readyState == 4) {
var resp = JSON.parse(xhr.responseText);
return resp.status;
}
}
xhr.send();
}
setInterval(function() {
if (getUserData() === "true") {
alert("true");
}
}, 10000);
这将(尝试)每10秒发送一次XHR,直到时间结束。 –
你期待什么结果? –