使用Ajax发送时等待响应加载

时间:2014-05-05 06:10:08

标签: javascript jquery html ajax

您好我发送请求并使用javascript从服务器接收回复

xxmlhttp.open("GET","ajax_info.txt",true);
xmlhttp.send();
myotherMethod();

我想要做的是,等到响应完全加载以便执行下一条指令,我怎样才能实现这一点,提前谢谢。

3 个答案:

答案 0 :(得分:3)

使用onreadystatechange

xmlhttp.open("GET","ajax_info.txt",true);
xmlhttp.onreadystatechange=function(){
if(xmlhttp.readystate==4 && xmlhttp.status==200){
myotherMethod();
}
}
xmlhttp.send();

答案 1 :(得分:2)

在jQuery中你可以使用async:false就像这样,现在你正在使用核心javascript,所以我不知道它。但如果您将尝试jQuery以及与此相关的任何查询,请问我。

添加 async:false 之后:在响应警告('b')后执行..否则,它将在没有响应的情况下执行。

   jQuery.ajax({
           type: "POST",
           url: 'www.abc.com/1'
           async: false,
           success: function(returnHtml) {
               alert('a');
           }
               alert('b');
     });

答案 2 :(得分:1)

使用onreadystatechangereadyStatestatus,试试这个:

xmlhttp.onreadystatechange = function() {
  if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
      // response is fully loaded, write your next instructions here
  }
};