javascript - 如何在javascript中使用get命令读取本地文本文件

标签 javascript jquery html css

我正在尝试使用 JavaScript 中的 get 命令打开一个文本文件,以便我可以在我的 html 中填充一个标签,但我似乎无法在这方面取得任何进展。文本文件与我的 html 位于同一文件夹中。我想单击我创建的按钮并更改 div 标签。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html>
    <head>
<title>Glorious Final </title>
<meta name="keywords" content="" />
<meta name="description" content="" />
    <link rel="stylesheet" href="css.css" type="text/css" media="screen" charset="utf-8"/>

    <script src="jquery-1.4.4.min.js" type="text/javascript" charset="utf-8"></script>


    <script src="script.js" type="text/javascript" charset="utf-8"></script>
    </head>
    <body>

<div id="six-point-star"></div>
<h1>JQuery Jedi </h1>

<div id="ornamentRow1"></div>

<p>
<h2>Ajax  Admiral</h2>
<div id="ornamentRow2"></div>
</p>
<h3>Javascript Janitor</h3>
<div id="custom"></div>

<h4>
    <button type="button" id="twinkle" >Twinkle Me Starmo</button>

    <button type="button" onclick="hangOrnament1()">Hang First Ornament</button>
    <button type="button" onclick="">Hang More Ornaments</button>

</h4>

<h5>

    <button type="button" onclick="">!!Open Me!!</button>

</h5>

    </body>
    </html>

不,这是我想在名为 script.js 的文档中使用的 javaScript 函数,我认为这是我出错的地方

    function hangOrnament1()
    {
    //open "ornaments.txt" and change the innerHTML of the "ornamentRow1" div tag
    if (window.XMLHttpRequest)
    {// code for IE7+, Firefox, Chrome, Opera, Safari
     xmlhttp=new XMLHttpRequest();
    }
    else
    {// code for IE6, IE5
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    xmlhttp.onreadystatechange=function()
    {
    if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("ornamentRow1").innerHTML=xmlhttp.responseText;
    }
    }
    xmlhttp.open("GET","ornaments.txt",true);
    xmlhttp.send(null);
    }

我认为问题出在这个 javascript 函数底部的“GET”行中,但我不知道如何修复它。我已经阅读了几个小时的表格,试图自己找到解决方案,但没有运气。

最佳答案

使用以下 JQuery 代码。 (如果您使用的是 chrome,请确保它启用了 --allow-file-access-from-files 选项:(假设您有一个带有 id="Para1"的段落/div 标签)

var s="";
$.get('./ornaments.txt', function(data) {    
    var lines = data.split("\n");

    $.each(lines, function(n, elem) {
                       s=s+"<br/>"+elem;
             });
});
$("#Para1").html(s);

`

关于javascript - 如何在javascript中使用get命令读取本地文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20526687/

相关文章:

javascript - 画线时CSS定位对齐?

javascript - Jquery:mouseover 和 mouseout 奇怪

html - CSS 溢出-y : scroll scrollbar position not in the right place

javascript - 在javascript中回顾?

javascript - ESlint 初始化设置未显示 VSCode Windows 操作系统

javascript - 计算任意轴上物体的世界向上向量(ThreeJS)

php - Jquery表单提交依然清爽

javascript - 使用纯 javascript 将效果应用于特定的 lis

javascript - uploadify 中出现未知错误

angularjs - 防止在输入数字中输入字母 'e' 和点