Javascript中的闭环AJAX
我最近有一些问题。让我详细解释一下我想做什么 现在我有一个html文件,它通过Javascript中的闭环AJAX,javascript,html,ajax,Javascript,Html,Ajax,我最近有一些问题。让我详细解释一下我想做什么 现在我有一个html文件,它通过标记运行javascript。我需要读取一个文件并将其保存为变量。然后用“orders”类在html标记中打印结果。 我通过这一行来实现这一点:document.getElementById(“orders”).innerHTML+=“这将添加一个新段落”“现在部分工作正常了。我将文本文件index.txt作为一个框架添加到页面中,并读取目录中的文件数(index.txt的写入是在另一个脚本中完成的,我知道它工作正常)
标记运行javascript。我需要读取一个文件并将其保存为变量。然后用“orders”类在html标记中打印结果。
我通过这一行来实现这一点:document.getElementById(“orders”).innerHTML+=“这将添加一个新段落”“
现在部分工作正常了。我将文本文件index.txt作为一个框架添加到页面中,并读取目录中的文件数(index.txt的写入是在另一个脚本中完成的,我知道它工作正常)
现在这是有趣的地方,我将索引的数量打印到我的id“orders”中,这样就行了。我还启动了一个循环,遍历文件夹中的每个文件(丑陋的字符串束),并将其作为帧添加,就像我在第一个index.txt中所做的那样。这同样有效,您可以在我的浏览器中检查html代码,我看到添加了框架。但当我试图打印出每个文本文件时,什么也没发生。我可以在循环中调用ajax函数吗?不及时更新html脚本是否需要很长时间?我应该把电脑扔到墙上吗
感谢您的帮助
这是我的剧本:
<div id="orders"> </div>
<iframe id="frmFile" src="index.txt" onload="LoadFile();" style="display: none;"></iframe>
<script type="text/javascript">
var xhr = new XMLHttpRequest();
var index;
var print;
xhr.open( 'GET', 'index.txt', true );
xhr.onreadystatechange = function() {
if( xhr.readyState == 4 ) {
if( xhr.status >= 200 && xhr.status<300 || xhr.status == 304 ) {
index = xhr.responseText.split('\n');
document.getElementById("orders").innerHTML += "<p>"+index+"</p>";
for(var i = 0; i < index; i++){
document.getElementById("orders").innerHTML += "<iframe id="+"'"+"frmFile"+"'src="+"'"+"/Orders/order"+i+".txt"+"' onload="+"'"+"LoadFile();"+"'"+"style="+"'"+"display: none;"+"'"+"></iframe>";
xhrt = new XMLHttpRequest();
xhrt.open('GET','Orders/order'+i+'.txt',true);
xhrt.onreadystatechange = function(){
if( xhrt.readyState == 4 ) {
if( xhrt.status >= 200 && xhr.status<300 || xhr.status == 304 ) {
obj = xhrt.responseText.split('^');
document.getElementById("orders").innerHTML += "<p>"+obj+"</p>";
}
}
}
}
}
}
}
xhr.send();
</script>
var xhr=new XMLHttpRequest();
var指数;
var打印;
open('GET','index.txt',true);
xhr.onreadystatechange=函数(){
if(xhr.readyState==4){
如果(xhr.status>=200&&xhr.status=200&&xhr.status是否应该有一个xhrt.send(null)
调用,或者这是一个输入错误?一个输入错误。天啊,我相信我忘记了。非常感谢!@rico0719我想如果你想在循环中调用ajax,那么xhr.send应该在循环中。你的正确答案是。我遗漏了xhrt.send()完全在循环中@AbhisekMalakar@rioc0719哇。这些都是很好的推荐信。谢谢你和他分享。