【问题标题】:How can I insert text from a .txt file into an HTML element with javascript? [duplicate]如何使用 javascript 将 .txt 文件中的文本插入 HTML 元素? [复制]
【发布时间】:2021-01-13 21:07:19
【问题描述】:

我有我的 HTML 文件,我有我的 javascript 文件,我有我希望在浏览器的 HTML 文件中显示的纯文本的 .txt 文件。

const fs = require("fs");
let fileUrl = "content";
let files = fs.readdirSync(fileUrl);

function kys(){
    let result = "";
for (i in files){
    result += fs.readFileSync("content/" + files[i]).toString();
}
return result;
}

此文件从“内容”文件夹中读取文本文件。

<script src="../scripts/skripti.js"></script>

我已经在我的 HTML 文件的 body 标记中添加了 javascript 文件,但我终生无法弄清楚如何让它显示从函数返回的“结果”值。

最简单的方法可能是创建一个单独的 javascript 文件或添加到该 javascript 文件代码以创建一个新的 HTML 标记并编辑 InnerHTML 元素,但我收到“文档”未定义的错误。

这可能是因为我通过 VSC 扩展通过 node.js 测试网站?我也试过在我的浏览器(Chrome)中打开 HTML 文件,没有区别。

我也尝试过让函数将结果返回给变量,但我遇到了“文档”和“窗口”未定义的错误。

浏览互联网,唯一的解决方案似乎是安装 npms,但我希望尽可能简单,并且仅锁定模块似乎是不必要的膨胀。

创建脚本标签并尝试从我的 HTML 文件中调用该函数似乎不起作用。

Tl;dr,我在文件中有文本,我想使用 javascript 在网页中显示文本,文本文件存储在本地(在我的计算机上)。

【问题讨论】:

  • 这个JS看起来像node.js,需要运行在服务器上。但是&lt;script&gt; 标签在客户端运行代码。
  • 有没有办法不使用node.js呢?我不是经验丰富的开发人员,但我想在第一次尝试网站时尽可能保持干净?不知道我一开始是在写 node.js,哈哈。
  • 您是在读取服务器还是客户端的文件?
  • 文本文件和HTML文件都是本地存储的,所以假设是客户端。

标签: javascript html


【解决方案1】:

fs 包是特定于 Node.JS 的,不能在网页中使用。您可以将readFileSync 替换为XMLHttpRequestfetch(),但readdirSync 没有与浏览器兼容的替换。为此,您将需要使用索引文件(本质上是包含要下载的其他文件列表的文件)或为您提供目录内容列表的服务器 API。

【讨论】:

  • 这让我的齿轮再次运转起来,谢谢!既然我还没有取得太大进展,那么我最好重新考虑一下整个事情并重新开始吗?我的目标是制作一个简单的博客式网站,而不使用任何样板解决方案来学习其中的技巧。我有 C/C++ 和一般编码方面的爱好经验,但是一旦您深入了解,Web 开发似乎变得非常复杂。
  • @Tuomas 我会这么说。对于 Web 应用程序,您需要考虑两部分 - 客户端和服务器。客户端应充当用户的接口(显示数据和接受输入),服务器应提供对站点数据的结构化和受控访问。
猜你喜欢
  • 2020-05-27
  • 1970-01-01
  • 2014-06-29
  • 1970-01-01
  • 1970-01-01
  • 2013-05-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多