簡體   English   中英

在事件中止先前的ajax調用

[英]abort previous ajax call on event

問題是,當我點擊.personalized類不兼得#loading_personalized#divPersonalized所以它采用AJAX,只要我再次點擊呼叫..和.personalized在時間上的ID #loading_personalized是顯示了它隱藏但以前的AJAX調用尚未被抵消,因此執行和顯示#divPersonalized ,但我想,當時的#loading_personalized被顯示出來,我點擊.personalized以前的AJAX調用也應該取消。這里是我的代碼。 .....

 $(document).ready(function(){

         $(".Personalized").click(function(){



if($("#divPersonalized").is(':visible')){

    $('#triangle-personalized').hide();
    $("#divPersonalized").hide();
}

else if($('#loading_personalized').is(':visible'))
{
    $('#loading_personalized').hide();
               //if this event is true, abort previous ajax call here

}

else {


$.ajax({

    type:"POST",
    url:"personalized.php",
    cache:false,
    beforeSend: function(){
        $('#loading_personalized').show();
        $('#triangle-personalized').show();
    },

    complete: function(){
        $('#loading_personalized').hide();

    },
    success: function(html){


        $("#divPersonalized").html(html).show();
    }


});
}       
  });

您需要存儲jQuery ajax對象,然后調用abort()

myAjaxCall = $.ajax({
    type:"POST",
    url:"personalized.php",
    cache:false,
    beforeSend: function(){
       $('#loading_personalized').show();
       $('#triangle-personalized').show();
    },

    complete: function(){
        $('#loading_personalized').hide();
    },
    success: function(html){
        $("#divPersonalized").html(html).show();
    }
});


if($('#loading_personalized').is(':visible'))
{
    $('#loading_personalized').hide();
    myAjaxCall.abort();
}

暫無
暫無

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

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