第一个完成后,jquery运行函数

时间:2014-07-29 15:06:32

标签: jquery ajax

我正在使用一个执行ajax调用的函数(它相当大),因为我必须在多个地方使用它,这是一个相当大的ajax调用。之后我手动调用另一个ajax调用来相应地更新页面上的一些内容。我遇到的问题是第二个调用在第一个调用完成之前运行。

我希望做一些像function()。done(在这里运行其他调用)。我不希望第二个函数运行,直到第一个函数完成并更新了数据库,因为第二个函数应该提取新信息。

在jquery中这样的事情可能吗?

2 个答案:

答案 0 :(得分:3)

正如你所说,你可以在Ajax电话上调用.done()

以下是取自jQuery documentation

的示例代码
$.ajax({
  url: "test.html",
  context: document.body
}).done(function() {
  $( this ).addClass( "done" );
});

答案 1 :(得分:0)

我建议你在ajax成功上调用你的函数:

$.ajax({
  url: "yourUrl",
  //...o
  success: callNextFunction(),
  error: rollBackFunction()
});

function callNextFunction(){
//your code here
}