如何调用jquery ajaxStart + ajaxComplete

时间:2009-09-16 01:15:24

标签: jquery ajax complete

我有一个加载函数,并希望代码在加载时将一些html写入div,并在完成时显示页面。我在ajaxStart和ajaxComplete事件上看到了一些小写,但是我不确定如何实现它们。

这是我正在考虑使用的jquery,但是不确定如何在我目前的代码中实现...

$(document).ajaxStart(function(){ 
    $('#content').html("Loading Content...");
    });

这是我正在使用的当前jquery:

//Load content
$(".load").click(function(){
    $("#content").empty();           
    loadName = $(this).attr("id");
    $("#content").load("/content/" + loadName + ".php");
    }); 

1 个答案:

答案 0 :(得分:17)

如果它是一个div并且您想用加载消息/指示符更新其内容,您可以这样做:

$("#content").html('<strong>Loading...</strong>')
             .load("/content/" + loadName + ".php");

我不会使用ajaxStartajaxStop / ajaxComplete global events,除非您有所有 ajax调用的通用加载指示符。也就是说,它可以按如下方式完成:

$("#loading").bind("ajaxStart", function(){
    $(this).show();
}).bind("ajaxStop", function(){
    $(this).hide();
});

其中loading元素是您在ajax调用期间要显示的内容。