如何等待ajax调用返回

Jam*_*ord 6 html javascript jquery

我正在尝试使用JQuery,虽然我在努力成功等待ajax调用成功然后执行更多代码.有没有办法等待ajax打电话?我见过一些例子,但似乎只是盲目地等待x秒钟?

谢谢,詹姆斯

Sam*_*ich 4

是的,您可以同步执行请求:

var bodyContent = $.ajax({
      url: "script.php",
      global: false,
      type: "POST",
      data: {id : this.getAttribute('id')},
      dataType: "html",
      async:false,
      success: function(msg){
         alert(msg);
      }
   }
).responseText;
Run Code Online (Sandbox Code Playgroud)

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

然而,同步请求是一种倒退,因为 JS 引擎(以及某些浏览器中的用户界面)将阻塞,直到请求完成。Douglas Crockford 曾经写过有关同步请求的文章

同步编程是不尊重的,不应该在人们使用的应用程序中使用。