现在页面上有一个div内容和一个按钮
我需要实现一个功能, 就是点击按钮, 将div里的文本内容封装成.txt文件, 进行下载
应该如何实现?
<a href="data:text/paint; utf-8, Hello World" download="down.txt">下载</a>
这是已知的一种方法, 但是感觉不是很合理
还有没有其他方法也能实现文件下载的?
现在页面上有一个div内容和一个按钮
我需要实现一个功能, 就是点击按钮, 将div里的文本内容封装成.txt文件, 进行下载
应该如何实现?
<a href="data:text/paint; utf-8, Hello World" download="down.txt">下载</a>
这是已知的一种方法, 但是感觉不是很合理
还有没有其他方法也能实现文件下载的?
href
<a>
标签增加 download
属性写成代码大概是:
<a href="文件名,用来显示在右下角" data-content="下载的内容,也可以不放在 dom 上" download="文件名">下载</a>
a.addEventListener('click', e => {
const {content} = e.target.dataset;
const blob = new Blob([content], 'text/plain');
const url = URL.createObjectUrl(blob);
e.target.href = url;
});
10 回答11.3k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答2.4k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
大概逻辑如下:
可以考虑使用file-saver处理