如何知道ajax何时开始并以$ .post结束?

时间:2012-11-13 20:42:11

标签: jquery ajax

在jquery中,有.ajaxComplete(),。ajaxStart()个事件,因此您可以在请求完成之前显示加载图像。我使用$ .post并想知道$.post是否存在相同的事件,或者如何在点击按钮完成请求之前显示加载$.post的图像?

谢谢...

2 个答案:

答案 0 :(得分:1)

ajaxStart & ajaxComplete 是每次发出ajax请求时触发的全局处理程序,这意味着您不需要更改发布请求,只需添加以下代码:

$('.log').ajaxStart(function () {
    $(this).append('<h1>ajax start.</h1>');
});

$(".log").ajaxComplete(function () {
    $(this).append("<h1>ajax complete.</h1>");
});

和html,可用于显示/隐藏加载器:

<div class="log">      
</div>

答案 1 :(得分:-1)

$ .post()有一个成功的回调,我相信。所以在点击或开始你的ajax调用时开始显示你的加载img,并在成功回调中隐藏它。

如果您使用ajax调用同时触发了overlay / spinner的外观,则在完成后将其隐藏:

   $.post('ajax/test.html', function(data) {
      $('#spinner').hide();
   });

您也可以使用remove()代替hide()