[英]Ajax callback from two functions
您好,我對ajax有問題,兩個回調代碼看起來像這樣
loadTasks(function(tasks) {
taskhtml = whatStatus(tasks);
loadSupportList(function(tasks) {
supporthtml = support(tasks);
$("#devtask-table").html(
titleDraw() + "<tbody>" + supporthtml + taskhtml
+ "</tbody>");
hideCurtain();
});
});
當loadSupportList或loadTasks有記錄時,它工作正常。 但是當其中之一沒有出現錯誤時,status = parsererror,拋出錯誤:SyntaxError:輸入意外結束。 它跳過了功能,讓我一無所有。 我的ajax函數看起來像這樣:
function loadSupportList(callback) {
$.ajax({
type : "POST",
url : url,
data : {
userId : userId,
sessionId : sessionId
},
success : function(data) {
callback(data['tasks']);
},
error : function(jqXHR, textStatus, errorThrown) {
console.log("Error, status = " + textStatus + ", " + "error thrown: "
+ errorThrown);
}
});
}
而且我不知道要更改什么,要忽略(?)還是用('success')做一些json? 有辦法嗎? 謝謝你的時間。
我做一些愚蠢的事情,但是做起來並不愚蠢
loadTasks(function(tasks) {
taskhtml = whatStatus(tasks);
$("#devtask-table").html(
titleDraw() + "<tbody>" + supporthtml + taskhtml
+ "</tbody>");
loadSupportList(function(tasks) {
supporthtml = support(tasks);
$("#devtask-table").html(
titleDraw() + "<tbody>" + supporthtml + taskhtml
+ "</tbody>");
hideCurtain();
});
});
假設任務返回一個數組...像這樣更新您的loadSupportList
函數。
success : function(data) {
var ret = [];
if(
'object' == typeof data &&
'undefined' != typeof data.tasks
) ret = data.tasks;
callback(ret);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.