您的位置:首页技术文章
文章详情页

javascript 如何下载一个excel文件 ?

【字号: 日期:2022-09-25 08:31:53浏览:33作者:猪猪

问题描述

<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>

标签: excel
相关文章: