我有一组按顺序运行的函数,但第一个函数有一个异步子函数。我希望第二个最高级别的函数只在异步函数完成后才能运行。知道我是怎么做到的吗?
档案A:
one();
two(); // I don't want this to run until after one()'s $.ajax success callback
function one() {
doSomethingElse();
$.ajax(url, {data: data}, function(){
// do two();
});
}
答案 0 :(得分:1)
更改函数以返回AJAX对象:
function one() {
doSomethingElse();
return $.ajax({
url: url,
data: data
});
}
现在你做了:
one().done(function() {
two();
});
比将two()
直接放入回调中更清晰。
答案 1 :(得分:0)
答案 2 :(得分:0)
function one() {
doSomethingElse();
$.ajax(url, {data: data}, function(){
// do two();
two();
});
}
function two(){
alert("here");
}