前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >js实现下载功能

js实现下载功能

原创
作者头像
用户1349575
发布2022-01-27 13:35:58
2.8K0
发布2022-01-27 13:35:58
举报
文章被收录于专栏:编程社区

1. a标签

代码语言:javascript
复制
<a href="../../static/xxx.xlsx" download="xxx.xlsx">下载</a>

直接点击可以下载,需要注意的是download属性,当不加download属性时,如果文件格式为txt、pdf、jpg等浏览器支持直接打开的文件格式,那么不会下载,而是浏览器直接打开;添加download属性之后,就会下载,并且下载文件默认命名为你download属性的值。(参考: https://blog.csdn.net/jsnancy/article/details/80824801)

2. window.open

代码语言:javascript
复制
window.open("../../static/xxx.xlsx") window.open("https://download.test.com/postedit/static/xxx.xlsx")

当然,下载的资源可以是本地的,也可以是网上的。

3.通过form表单提交的方式(get请求)

动态生成一个form表单,利用表单提交功能实现下载

代码语言:javascript
复制
//url 文件地址 或 接口地址
//data 请求参数:[{key:name,key1:value}]
function downLoadFile(url,data){
	let form = document.createElement('form');
	for(let i in data){
		let input = document.createElement('input');
		input.name = data[i].key;
		input.value = data[i].key1;
		form.appendChild(input)
	}
	form.style.display = 'none';
	form.method = "GET";//请求方式
	form.action = 'url'; //下载文件地址
	document.body.appendChild(form);
	form.submit();
	document.body.removeChild(form);
}

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. a标签
  • 2. window.open
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档