jQuery是一款經典的JavaScript庫,已被很多人廣泛使用。jQuery 提供了幾個常見的處理異步請求的方法。其中,done()就是其中之一。
使用done方法,我們可以更好地處理異步返回值。done() 方法就是當 Ajax 請求成功時所執行的函數,而在使用 jQuery.ajax() 請求時,可以通過該方法傳遞一個回調函數。在Ajax請求成功時,該回調函數就會被執行。
$.ajax({ url: "test.html", context: document.body }).done(function() { $(this).addClass("done"); });
注意:由于Ajax是異步請求,執行完請求后,不一定會進一步執行回調函數的內容,因此我們在回調函數中要時刻注意Ajax是否真的已經完成。此外,done方法還可以通過多個參數傳遞一系列函數,執行請求成功時多個函數。
// 傳遞單個回調函數 $.ajax('/api/test') .done(function(result) { console.log(result); }); // 傳遞多個回調函數 $.ajax('/api/test') .done(function(result) { console.log(result); }, function(xhr, status) { console.log(xhr, status); });
在使用done時,我們需要注意的是,done方法只會執行請求成功的回調函數,如果請求發生錯誤,則不會執行done方法。而我們可以通過fail方法來處理請求失敗時的回調。
$.ajax({ url: "/api/test", data: { id: id }, type: "GET", dataType: "json" }).done(function(result) { console.log(result); }).fail(function(xhr, status, error) { console.log(error); });
通過done和fail方法相結合的處理方式,可以更好地處理Ajax請求的成功與失敗,保證代碼的可靠性。
上一篇如何在css中把圖片縮小
下一篇如何在css中寫ie判斷