回覆列表
-
1 # 使用者2912883996139
-
2 # 使用者7724478402265
捕獲失敗,和成功一樣,都是透過返回來實現的: $.ajax({ type: "POST", url: "/index.php", data: "id=1", success: function(msg){ //成功 } error:function(msg){ //失敗 } });詳解error: error: 要求為Function型別的引數,請求失敗時被呼叫的函式。該函式有3個引數,即XMLHttpRequest物件、錯誤資訊、捕獲的錯誤物件(可選)。ajax事件函式如下:function(XMLHttpRequest, textStatus, errorThrown){//通常情況下textStatus和errorThrown只有其中一個包含資訊this; //呼叫本次ajax請求時傳遞的options引數}
麻煩大家了,我想了很久還是用遞迴解決了,遞迴可以單用也可以結合Promise用。用遞迴來裂變,每次遞迴都裂變一次。由於Promise的每一個鏈條之間都沒有相關性,並不是等大家第一大步都完成了,才開始第二大步,所以依靠Promise寫一個優雅的鏈條是沒戲的。如果用遞迴加Promise也是可以的,不過只有當考慮成功跟失敗兩種可能的時候用Promise比較合適,否則單純遞迴就足夠。原理是在遞迴函式中用promise只then一步,然後返回promise物件。new出來的物件負責ajax請求,then負責處理返回的資料。