在JQuery中调用Ajax的全局回调

时间:2010-01-09 09:34:12

标签: jquery ajax callback

是否可以创建和附加一个回调,无论是使用$.ajax$.postload还是其他任何函数进行调用,只要ajax请求完成就会调用该回调?

修改

Nakul(使用ajaxSuccess全局事件)给出的解决方案几乎是完美的。但是,在使用load函数时,我遇到了问题。在请求完成之后但在任何DOM操作之前引发ajaxSuccess事件。我想在修改DOM之后执行一些代码。我的临时解决方案是使用setTimeout并等待几毫秒,但我认为它对我来说不够可靠。

另一个问题是:在load函数操纵DOM之后如何执行代码?

编辑2:

我设法通过使用ajaxComplete事件而不是ajaxSuccess来解决第二个问题。

2 个答案:

答案 0 :(得分:4)

您可以使用ajaxSuccess 更多信息:http://www.slideshare.net/wildan.m/jquery-talk-to-server-with-ajax(在幻灯片47之后)

答案 1 :(得分:1)

使用ajaxSuccess并且您可能希望在单击链接时运行代码?

HTML:

<a href="javascript:void(0);" class="runCode">Run code</a>

JS:

$(function() { // same as dom loaded
    $('a.runCode').click(function() {
        alert('whatever you want to do here');
    });
});