您好我发送请求并使用javascript从服务器接收回复
xxmlhttp.open("GET","ajax_info.txt",true);
xmlhttp.send();
myotherMethod();
我想要做的是,等到响应完全加载以便执行下一条指令,我怎样才能实现这一点,提前谢谢。
答案 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)
使用onreadystatechange
,readyState
和status
,试试这个:
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
// response is fully loaded, write your next instructions here
}
};