如何检查并等待服务器滞后的保存功能来完成,它返回一个Ajax对象jqxhr,我要检查,如果Ajax请求是否完成我做别的事情之前。如何使用延迟值检查ajax是完成还是失败?
注:保存功能已经成功,完全错误等。我想,以确保其完成之前,我做任何事情,使我dotn得到了一个未定义当我使用jqxhr.status。
$(document).ready(function() {
$(function() {
$("#save").click(function() {
save().then(function(jqxhr){// check status...
alert(" jqxhr status " + jqxhr.status); <--getting undefined first
//200 for success
var stat = jqxhr.status;
//alert(" inside 200 status "+stat);
if (stat == 200) {
console.log("inside 200");
alert(" inside 200 status " + stat);
}
if (stat == 400) {
console.log("inside 400");
alert(" inside 400 status " + stat);
} else {
alert(" inside 200 status " + stat);
}
});
});
});
});
只是习惯了这样的事实:这是** async **调用。你需要相应地处理它。你*可以*使xhr请求阻止呼叫... **但是**我根本不会推荐,因为它在等待时冻结UI。 – poncha
你为什么要调用'save()'两次? –
我需要得到的jqxhr状态的值保存函数返回jqxhr对象。我愿意提出建议..我只想在完全完成ajax请求后才执行if语句。如何等待或知道Ajax请求是complete..if我尝试打印jqxhr.status年初我得到了一个未定义,sicne阿贾克斯尚未完成 – user244394