|
1
1
在每个请求的回调函数上,设置一个布尔值,例如
打电话
在handler函数中,检查两个布尔值是否都已设置。如果没有,只需返回并退出函数即可。回调函数应该序列化,因为它们不能同时发生,所以这应该是可行的。如果它们可以同时发生,你会在比赛条件下破发。 |
|
|
2
1
我会这样做的。该方法是一种通用的方法,它为您提供了更大的灵活性和重用性,并避免了耦合和全局变量的使用。
一般用法:
回调的输出(由Firebug压缩):
请注意
要在Ajax请求的上下文中使用它,请执行以下操作:
编辑:我已将函数更新为强制
|
|
|
3
0
好吧,你必须记住浏览器中的JS实现并不是真正的并发的,并利用它来发挥你的优势。所以你要做的是在每个处理程序中检查另一个是否完成了。jQuery中的示例:
|
|
|
4
0
基于 Justin Johnson's response to this question :
我不确定的一点是,这是否避免了比赛条件。如果表达式++complete_count==延迟。长度总是以原子的方式发生,那么这应该是可行的。 |
|
|
5
0
您可以使用设置临时变量并等待“最后一个”请求发出的概念。为此,您可以让这两个句柄函数将tmp变量设置为return val,然后调用“on_both_requests_complete”函数。
|
|
|
James Williams · 如何在单击按钮时刷新div内容 4 年前 |
|
|
Mehmet · javascript执行了多个 4 年前 |
|
|
Shijil · 尝试在Jquery PHP搜索代码中添加选择标记功能 4 年前 |
|
|
Parker · 如何使表格行的单元格项加粗n秒? 4 年前 |
|
|
Chris J. · ajax获取查找数据属性值的请求 4 年前 |
|
|
Pedro F · Ajax调用后脚本运行不正常 4 年前 |