javascript 如何下载一个excel文件 ?
问题描述
<form method='get' action='/app/PoiTemplate/NFC.xlsx'><button type='submit'>Download!</button> </form>
window.open('/app/PoiTemplate/NFC.xlsx')
上面两种方式都把文件给打开了, 还有其他下载方法吗 ?
问题解答
回答1:<a href='https://www.haobala.com/wenda/nfc.xlsx' download='nfc.xlsx'>下载</a>
下面是php 的header,自己试试
header('Content-Type: application/vnd.ms-excel; charset=UTF-8' ); header('Pragma: public' ); header('Expires: 0' ); header('Cache-Control: must-revalidate, post-check=0, pre-check=0' ); header('Content-Type: application/force-download'); header('Content-Type: application/octet-stream' ); header('Content-Type: application/download' ); header('Content-Disposition: attachment;filename=11.xls ' ); header('Content-Transfer-Encoding: binary ' ); 回答2:
虽然IE不识别download属性,但是IE下它任然是个链接,所以我们可以加一个 target='black' 属性,来打开新窗口,实现下载,所以可以实现如下:
<a href='https://www.haobala.com/wenda/nfc.xlsx' download='nfc.xlsx' target='_blank'>下载</a>回答3:
你的问题并不在前端,换一种思路,通过后端下载,随便在前端发起一个get请求,在后端设置返回头 Content-Disposition: Attachment; filename='文件名',并以流的形式,浏览器自然后弹出文件选择框。这儿有个java例子https://github.com/treeandgra...第二种思路:/q/10...
回答4:以我的经验,你这个问题应该是出在浏览器上,换个浏览器试试
回答5:javascrit的特点在于DOM和BOM的操作和引用,文件下载属于Meta的特性,javascript无权操作,让后端开发人员设置输出的Head Meta即可。
回答6:<a href='https://www.haobala.com/wenda/xx.xlsx'></a>
相关文章:
1. 在windows下安装docker Toolbox 启动Docker Quickstart Terminal 失败!2. node.js - mongodb查找子对象的名称为某个值的对象的方法3. html5 - 图片一般一怎么的形式存放在服务器中的?4. 网页爬虫 - python 爬取网站 并解析非json内容5. 百度地图api - Android 百度地图 集成了定位,导航 相互的jar包有冲突?6. javascript - 回调函数和闭包的关系7. 浅谈Vue static 静态资源路径 和 style问题8. python - flask post提交timestamp不能作为参数,这是为什么?9. android-studio - 文件没问题的情况下not read packageName from xxxAndroidManifest.xml?10. node.js - express框架,设置浏览器从缓存中读取静态文件,只有js从缓存中读取了,css还有一些图片为何没有从缓存中读取?

网公网安备