【发布时间】:2012-05-23 07:50:38
【问题描述】:
我正在使用 ajax 调用脚本。我想在页面上显示脚本执行的进度。
我的意思是我想在 div 中逐步显示以下消息:
//after execution of section 1
Section 1 of script executed successfully.
//after execution of section 2
Section 2 of script executed successfully.
//after execution of last section
Script execution complete.
我使用的方法是仅在脚本完全执行后才显示所有 3 条消息。
var script1_ajax = new XMLHttpRequest();
script1_ajax.onreadystatechange=function() {
if (script1_ajax.readyState==4 && script1_ajax.status==200) {
document.getElementById('result').innerHTML = script1_ajax.responseText;
}
}
我不想将我的脚本分成多个脚本。
请建议如何做到这一点。
【问题讨论】:
-
你在服务器上用什么? AJAX 通常只会在页面/脚本完成加载时返回 responesText(您通常不能按照您的建议进行操作)。
-
@jezternz:实际上,您可以通常这样做。
-
真的!抱歉,我的印象是长轮询只是意味着服务器在完成请求之前不会保持 ajax 连接打开,但是在进一步阅读后我更好地理解它,干杯!
标签: javascript ajax progress