如何知道异步请求已完成响应。

时间:2012-03-24 10:24:55

标签: jquery asynchronous scroll scrollbar

我有以下代码将我的结果追加到主页面向下滚动。

我在加载数据页面中使用了Graph。在html页面上加载数据需要时间。 有时在没有Graph的追加数据之前,我也尝试同步ajax调用,但它会阻止我的浏览器。 如何在加载数据或获得完整响应后管理要调用的mytestfuntion()

$(document).ready(function() {
    var j = $.noConflict(); 
    j(window).scroll(function(){
        if  (j(window).scrollTop() == j(document).height() - j(window).height()){
            mytestfuntion();  
        }
    }); 
});


function mytestfuntion() 
{ 
    var ID=$(".prodDivDtlClass:last").attr("id");   
    $('#last_productDiv_loader').html("<img src='......./loading.gif'>");   
    var prdResultArr = $("#prdResultArr").val();
    var recfrom = $("#recfrom").val();  
    var url="loaddata.php?action=get&last_prd_id="+ID+"&recfrom="+recfrom+"&prdResultArr="+prdResultArr;

    $.ajax({
      url: url,
      success: function(data) {
        if (data != "") {
            var newRecfrom = parseInt(recfrom) + 10;
            $("#recfrom").val(newRecfrom);
            $(".content").append(data);
            $('#last_productDiv_loader').empty();       
        }       
      }
    });
}

2 个答案:

答案 0 :(得分:1)

尝试使用jQuery内置函数.ajaxComplete()此函数可用于更新用户完成ajax请求。

答案 1 :(得分:0)

运行你的页面。在Mozilla中使用Firebug&amp;按F12,然后单击网络菜单。

它会显示所有请求和&amp;响应。