当前位置: 首页 > 面试题库 >

Javascript:使用AJAX读取文本文件

弓温书
2023-03-14
问题内容

无法使AJAX正常工作!我在网站上有一个字幕,可以正常使用!但是我希望它在文本文件中找到字幕的文本,并且希望它读取文本文件中的文本(一行),并将其分配给名为的变量content,该变量是脚本中的全局变量标签。

当我运行网站(本地IIS)时,字幕文本为:“未定义”(不带引号)。

为什么不将文本分配给变量content

    var content

    function loadXMLDoc()
    {   
        var textfile;
        if (window.XMLHttpRequest)
        { 
            textfile = new XMLHttpRequest(); 
        }
        textfile.onreadystatechange = function ()
        {   
            if (textfile.readyState == 4 && textfile.status == 200)
            { 
                content = textfile.responseText; 
            }
        }
        textfile.open("GET", "C:\Users\Fares\Dropbox\Sync\College\Computing\DeltaOne\MarqueeText.txt", true);
        textfile.send();
    }

编辑: 一百万感谢@kuncajs,因为他指出我忘了调用该函数!:)固定!感谢其他人!


问题答案:

不要使用本地路径,例如:
C:\Users\Fares\Dropbox\Sync\College\Computing\DeltaOne\MarqueeText.txt

将其放在IIS的www目录中,并声明如下路径: localhost/text.txt

服务器对文件系统的访问权限可能受到限制,并且您还应尝试使用相对路径,例如text.txt或绝对路径,/text.txt这样即使您将其部署在生产环境中,这些路径也可以使用。

编辑: 因此,如果这没有帮助,那么请确保您确实调用了该loadXMLDoc()函数。还要检查AJAX结束
您所做的一切!我的意思是,您在if-AJAX完成后进行赋值,但还应该初始化字幕!文本已加载。如果您在未定义之前执行此操作



 类似资料:
  • 我想从我的本地html文件中读取一个本地文本文件,所以我尝试遵循这个线程中的解决方案JavaScript-Read local text file,但建议的解决方案对我也不起作用: 当我调用函数时,在firebug中不会出现错误,但也不会显示警报。我使用Windows和Firefox51.0.1(64位)。我不想将函数与按钮

  • 问题内容: 我如何阅读像android app中的文本文件: 所以我可以返回一个字符串,如: 我想到的是(伪代码): 问题答案: 试试这个

  • 问题内容: 我在使用BufferedReader时遇到问题 我想打印一个文本文件的6行: 现在,从每次调用readLine()方法可以收集到的信息开始,它都会自动前进到下一行。 所以我不能使用条件br.readLine()!= null,因为它已经将其前进了一行,并且我得到了输出: 我使用什么条件来检查文本字段中是否还有新行。 提前致谢! 问题答案: 这就是问题: 您有两次调用-第一个 仅 检查是

  • 问题内容: 我需要在终端中传递一个文本文件,然后从中读取数据,我该怎么办? 如何从终端进入路径,如何在另一侧阅读? 问题答案: 您将要使用数组访问命令行参数以获取文件名,并使用FileSystem模块(fs)来读取文件。例如: 为了稍微分解一下,通常长度为2,第零个为“节点”解释器,第一个为节点当前正在运行的脚本,其后的项目在命令行中传递。从argv中提取文件名后,就可以使用文件系统函数读取文件并

  • 我想打印一个文本文件的6行: 现在,根据我每次调用readLine()方法时所收集到的信息,它会自动前进到下一行。 所以我不能使用条件br.readline()!=null,因为它已经提前了一行,我得到的输出是: 我使用什么条件来检查文本字段中是否还有新行。 提前道谢!

  • 问题内容: 我正在尝试通过创建一个接受文件路径并将文本的每一行转换为char数组的函数来编写一个简单的文本文件阅读器,但是它不起作用。 这是怎么了? 从先前的版本中稍稍更改了代码后,这似乎仍然不起作用,现在给了我一个例外101。 我已经在Firefox上对其进行了测试,并且可以工作,但是在Google Chrome中它却无法工作,并且一直给我一个异常101。如何使它不仅可以在Firefox上而且还