警告:需要的jQuery 1.5 +
$.firstfunc = function() {
return $.ajax({});
}
$.secondfunc = function() {
return $.ajax({});
}
$(function() {
$.when($.firstfunc).then($.secondfunc);
});
使用的$.Deferred
的和$.when
魔法。
它基本上說當你第一個函數完成它的ajax調用然後調用第二個函數。
這是因爲$.ajax
返回從$.Deferred
繼承的jqXHR
對象。
如果您要附加一個回調當兩個$.firstfunc
和$.secondfunc
完整的,那麼你可以做以下(需要的jQuery 1.6):
$(function() {
$.first().pipe($.second).done(function(second_data) {
// both finished.
});
});
遺產:的jQuery 1.4.2 & 1.3.2支持。
$.firstfunc = function(cb) {
$.ajax({
success: function() {
...
cb();
},
...
});
}
$.secondfunc = ...
$(function() {
$.firstfunc($.secondfunc);
});
而且你想用什麼命令?如果你希望secondfunc只在第一個Ajax響應後才執行,請在firstfunc ajax的成功函數中調用'secondfunc'。 – 2011-05-19 18:59:26