一切都做完之后再做点什么
do something after everything is done -
我有一组函数要按顺序运行,但第一个函数有一个异步子函数。我希望第二个最高级别的函数只在异步函数完成后运行。知道我怎么做吗?
文件:
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();
});
}
修改函数以返回AJAX对象:
function one() {
doSomethingElse();
return $.ajax({
url: url,
data: data
});
}
现在你知道了:
one().done(function() {
two();
});
这比将two()
直接放入回调中要简洁一些。
承诺是您的目的的最佳选择
jQuery延迟和承诺- .then() vs .done()
function one() {
doSomethingElse();
$.ajax(url, {data: data}, function(){
// do two();
two();
});
}
function two(){
alert("here");
}
相关文章:
- addEvent()传奇事件之后的当前最佳实践是什么
- 在表单提交将DOM的一部分替换为分部之后,我应该将ajax成功绑定到什么来使我的javascript工作
- regex某个字符可以存在也可以不存在,但之后什么都没有
- 如果在 JavaScript 中的 if 条件之后在执行块中使用两个等于而不是只有一个,会发生什么情况
- 缺少 ) 在参数列表之后.我做错了什么
- JavaScript - 在哪些操作之后需要 toFixed() 以及应该传递什么参数
- 使用日期时间选择器 UI 选择在日期时间之后使用什么方法触发事件
- 在返回表达式之后定义函数的使用场景或优点是什么
- 在$(document).ready()之后调用什么jQuery事件
- history.back()之后的代码会发生什么
- 什么是",真正的);“在事件侦听器之后执行
- 单击submit之后,Form什么也不做
- 如果我在同步ajax调用之后进行异步ajax调用会发生什么?
- 我想在ajaxForm之后做点什么.提交,在哪里放置代码
- 一切都做完之后再做点什么
- 在node.js堆栈跟踪行中冒号之后的第二个数字是什么意思?
- javascript源代码在附加了表的td、tr之后发生了什么
- 在jQuery 1.7之后,live()和bind()被弃用的原因是什么?
- 在编译完文件中的所有CSS和另一个文件中的JS之后,接下来的步骤是什么?
- 提示之后什么都没有发生