那是我的javascript:
<script>
$('#DIVID01').text("Loading...");
var Httpreq = new XMLHttpRequest();
Httpreq.open("GET", 'http://httpbin.org/ip', false);
Httpreq.send(null);
$('#DIVID01').text("Done");
</script>
当我逐行调试时,以下代码显示了DIVID01的第一个更改,但在调用此函数时未调试,则需要2到3秒钟才能结束,并且屏幕上仅显示单词“ Done”。问题是第一行代码似乎不适用于此申请。
答案 0 :(得分:1)
XMLHttpRequest
是一个异步请求,js不会等待响应。它将触发异步请求,在这种情况下,$('#DIVID01').text("Done");
将立即移至下一行,并更新DOM。但您的情况是,期望收到响应后,dom将更新为“ done”。
由于您已经在使用jquery,希望您不介意使用jquery.ajax;和
$.ajax({
url:"some url",
type:"GET",
success:function(){
$('#DIVID01').text("Done");
}
})