如何檢查並等待服務器滯後的保存功能來完成,它返回一個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