I am trying to achive a ause functionality in javascript.
我正在进行异步 AJAX 调用并尝试实现 AJAX 的同步功能。我想暂停 javascript,直到收到 AJAX 异步调用的 AJAX 响应。由于某种原因,我没有使用 AJAX 同步调用来解决我的问题。
一旦我打电话,我会使用以下两个函数来暂停 JS
function pause2(numberMillis) {
var dialogScript = "window.setTimeout(" +
" function () { document.write(' '); window.close(); }, "
+ numberMillis + ");";
var result = window.showModalDialog('javascript.document.writeln(' +
'"<script>' + dialogScript + '<' + '/script>")');
}
function pause3()
{
do
{
if(lmsCommitTimeOut<9000){
lmsCommitTimeOut=lmsCommitTimeOut+1000;
pause2(1000);
}
else
{
//alert("TimeOut");
lmsCommitStatus="false";
return;
}
}while(readStateAchived=="false")
}
我称之为 pause3(); 每 1 秒在内部调用 pause2(1000) 的函数,直到我得到 ajax 响应,我在 js 变量“readStateAchived”的帮助下检查。
这在 IE6 中运行良好,但在 IE7 中它弹出模式窗口并且没有关闭,我必须手动关闭它。
谁能帮我这个?
谢谢你。