在JavaScript中等待AJAX​​的首选方法

时间:2010-08-25 15:05:14

标签: javascript jquery ajax

我发现自己现在必须经常在jQuery中等待AJAX​​。问题是,我必须做循环和废话等待它们。有什么方法可以让我在执行代码之前等待AJAX​​事件完成(最好不要创建额外的函数)?

3 个答案:

答案 0 :(得分:1)

通常,如果在重新调用AJAX请求之前可能无法完成重复的AJAX请求,我会使用一个标志来防止重叠请求。

首先,定义标志并将其初始设置为false。无论何时发送AJAX请求,请检查此标志是否为false。如果是,则继续执行请求 - 而不是在将标志设置为真实之前。完成AJAX请求后,将标志设置为false。

使用上述方法,一次只能运行一个AJAX查询实例。我确定jQuery必须能够看到是否已经处理了AJAX请求,但我是MooTools的人。

答案 1 :(得分:0)

您使用什么方法进行AJAX调用?如果使用内置$.ajax(),则可以将success属性设置为回调函数,该函数将在AJAX请求成功返回后调用。还有complete回调,无论是成功还是失败,都会被调用。

答案 2 :(得分:0)

来自jQuery API:

$.ajax({
   type: "POST",
   url: "some.php",
   data: "name=John&location=Boston",
   success: function(msg){
     alert( "Data Saved: " + msg );
   }
});

您还可以使用完整的选项。

http://api.jquery.com/jQuery.ajax/