簡體   English   中英

jQuery延遲方法和ajax beforeSend()

[英]jQuery deferred method and ajax beforeSend()

通過在$ .ajax中使用延遲對象

  • 成功回調可以用deferred-method done()代替
  • 錯誤回調acn被deferred-method fail()
  • 並且完整回調可以替換為always()

通過使用

var jqxhr = $.ajax({
                url: Config.baseUrl+"/ajax/favourites/set-favourite.ajax",
                dataType: "json",
                data: attrs,
                type: "POST",
                beforeSend: function(){
                    console.log("before send");
                }
            });

如何使用延遲對象實現beforeSend-callback

為什么我不在$.ajax函數中使用beforeSend-callback? 因為請求在模型實例( http://canjs.com/docs/can.Model.model.html#section_Non_standardServices )內,所以模型對象執行請求和所有其他的后綴,比如操作DOM將在延期對象。 我想在發送ajax請求之前操縱DOM。

我怎么能這樣做?

您可以將全局jQuery事件ajaxStart到觸發AJAX請求的任何元素。 這應該基本上復制beforeSend的功能。

$(".ajax").ajaxStart(function() {
    $(".document").append("AJAX begun");
});

小提琴

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM