Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript中的闭环AJAX_Javascript_Html_Ajax - Fatal编程技术网

Javascript中的闭环AJAX

Javascript中的闭环AJAX,javascript,html,ajax,Javascript,Html,Ajax,我最近有一些问题。让我详细解释一下我想做什么 现在我有一个html文件,它通过标记运行javascript。我需要读取一个文件并将其保存为变量。然后用“orders”类在html标记中打印结果。 我通过这一行来实现这一点:document.getElementById(“orders”).innerHTML+=“这将添加一个新段落”“现在部分工作正常了。我将文本文件index.txt作为一个框架添加到页面中,并读取目录中的文件数(index.txt的写入是在另一个脚本中完成的,我知道它工作正常)

我最近有一些问题。让我详细解释一下我想做什么

现在我有一个html文件,它通过
标记运行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哇。这些都是很好的推荐信。谢谢你和他分享。