如何按顺序运行javascript语句

时间:2012-09-12 15:04:20

标签: javascript jquery toastr

我想首先显示一条消息,然后重定向我的页面:

toastr.success('Your report has been submitted successfully.');
window.location = '/Report';

但上面的代码允许两个语句同时运行。结果,重定向发生在显示toastr消息之前,这需要时间..

对于这种情况,我们是否有类似$.when(...).done(...)的内容?

---更新---

如果有人不知道toastr,则它是一个在网页上显示消息的库。

当然设置一个计时器将起作用。但是,有没有任何优雅的方法可以在第一个语句完成后运行第二个语句?

2 个答案:

答案 0 :(得分:4)

您可以使用setTimeout:

toastr.success('Your report has been submitted successfully.');
setTimeout(function(){window.location = '/Report';}, 2000);

答案 1 :(得分:0)

您可以将函数作为回调传递,以在函数完成后执行。请参阅此类似问题的所选答案:How should I call 3 functions in order to execute them one after the other?