在第一个ajax函数调用完全完成之后,jQuery继续另一个ajax函数

我有2个差异函数中的2个ajax调用。我想使用.click调用这两个函数。func1将数据插入到数据库中,然后func2将检索数据,所以我的问题是如何等到func1完全完成后才执行func2。

我尝试了.delay(),它可以工作,但是我认为这是一个愚蠢的解决方案。

  $("#updateLocation").click(function(e){

e.preventdefault;

func1();

func2();

});

return false;

});

function func1(){

$.ajax({

url:'',

});

});

function func2(){

$.ajax({

url:'',

});

});

回答:

三种方式:

成功调用func1时调用func2:

    function func1() {

$.ajax({ ... }).done(func2);

}

Deferred时髦完成后,使用API调用func2:

    e.preventDefault();

$.when(func1).then(func2);

使func1同步(不推荐):

    function func1() {

$.ajax({url: '', async: false});

}

以上是 在第一个ajax函数调用完全完成之后,jQuery继续另一个ajax函数 的全部内容, 来源链接: utcz.com/qa/397285.html

回到顶部