jQuery deferred.then() 方法
實例
添加 .then 方法
$(function () {
$.get("test.php").then(
function(){ alert("$.get 成功"); },
function(){ alert("$.get 失敗!"); }
);
})
定義和用法
deferred.then() 函數當Deferred(延遲)對象被解決,拒絕或仍在進行中時,調用添加處理程式。
注意:1. 參數可以為 null 。或者使用.done(),.fail()或者 .progress()只設置一種未經過濾的狀態或值的回調類型。
2. 從jQuery 1.8開始, 方法返回一個新的 promise ,可以通過一個函數過濾 deferred(延遲)對象的狀態和值,用來替換現在過時的deferred.pipe() 方法。
3. 回調是依照他們被添加時的順序執行的,由於 deferred.then 返回 Promise 對象,可以鏈接其他的 Promise 對象,包括附加的 .then() 方法。
語法
方法一
deferred.then( doneFilter [, failFilter ] [, progressFilter ] )
方法二
deferred.then( doneCallbacks, failCallbacks [, progressCallbacks ] )
參數 | 描述 |
---|---|
doneFilter | Function類型 可選 當Deferred(延遲)對象得到解決時被調用的一個函數。 |
failFilter | Function類型 可選 當Deferred(延遲)對象拒絕時被調用的一個函數。 |
progressFilter | Function類型 可選 當Deferred(延遲)對象生成進度通知時被調用的一個函數。 |
參數 | 描述 |
---|---|
doneCallbacks | Function類型 當Deferred(延遲)對象得到解決時被調用的一個函數或函數數組。 |
failCallbacks | Function類型 當Deferred(延遲)對象拒絕時被調用的一個函數或函數數組。 |
progressCallbacks | Function類型 當Deferred(延遲)對象生成進度通知時被調用的一個函數或函數數組。 |

更多實例
過濾解決值
過濾解決值。
過濾拒絕值
過濾拒絕值。
鏈任務
鏈任務。