首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用SaveFile.js保存我的HTML文档?

如何使用SaveFile.js保存我的HTML文档?
EN

Stack Overflow用户
提问于 2019-12-06 13:50:43
回答 2查看 100关注 0票数 0

我正在尝试允许我的网页上有一个保存功能。我使用的是“SaveFile.js”模块:“https://github.com/eligrey/FileSaver.js/”当用户单击“保存”按钮时,文档应该作为一个包含输入框、图片等所有元素的HTML文件下载。然而,下载的并不是完整的HTML文档。只是HTML页面上的一些文本:

为什么会发生这种情况?

代码语言:javascript
运行
复制
<button type="button" name="btnSave" onclick="saveHTMLFile()">Save</button>

<script>
  function saveHTMLFile(){
  let fileToSave=document;
  let blob = new Blob([fileToSave],{type:"text/html;charset=utf-8"});
  saveAs(blob,'SavedOutline.html')
}
  </script>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-12-06 14:06:05

您需要将文档序列化为字符串。尝试使用document.documentElement.outerHTML,而不是只使用document

提供给您。

在您的代码中:

代码语言:javascript
运行
复制
<button type="button" name="btnSave" onclick="saveHTMLFile()">Save</button>

<script>
  function saveHTMLFile(){
  let fileToSave=document.documentElement.outerHTML;
  let blob = new Blob([fileToSave],{type:"text/html;charset=utf-8"});
  saveAs(blob,'SavedOutline.html')
}
  </script>
票数 1
EN

Stack Overflow用户

发布于 2019-12-06 13:56:49

我不确定它是否会有帮助,但您可以尝试这种平静的代码。

代码语言:javascript
运行
复制
var file = new File(["Hello, world!"], "hello world.txt", {type: "text/plain;charset=utf-8"});
FileSaver.saveAs(file);

当您使用新Blob()文档时,说明它只适用于Saving text

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59214463

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档