javascript 如何下載一個(gè)excel文件 ?
問(wèn)題描述
<form method='get' action='/app/PoiTemplate/NFC.xlsx'><button type='submit'>Download!</button> </form>
window.open('/app/PoiTemplate/NFC.xlsx')
上面兩種方式都把文件給打開(kāi)了, 還有其他下載方法嗎 ?
問(wèn)題解答
回答1:<a href='http://m.b3g6.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不識(shí)別download屬性,但是IE下它任然是個(gè)鏈接,所以我們可以加一個(gè) target='black' 屬性,來(lái)打開(kāi)新窗口,實(shí)現(xiàn)下載,所以可以實(shí)現(xiàn)如下:
<a href='http://m.b3g6.com/wenda/nfc.xlsx' download='nfc.xlsx' target='_blank'>下載</a>回答3:
你的問(wèn)題并不在前端,換一種思路,通過(guò)后端下載,隨便在前端發(fā)起一個(gè)get請(qǐng)求,在后端設(shè)置返回頭 Content-Disposition: Attachment; filename='文件名',并以流的形式,瀏覽器自然后彈出文件選擇框。這兒有個(gè)java例子https://github.com/treeandgra...第二種思路:/q/10...
回答4:以我的經(jīng)驗(yàn),你這個(gè)問(wèn)題應(yīng)該是出在瀏覽器上,換個(gè)瀏覽器試試
回答5:javascrit的特點(diǎn)在于DOM和BOM的操作和引用,文件下載屬于Meta的特性,javascript無(wú)權(quán)操作,讓后端開(kāi)發(fā)人員設(shè)置輸出的Head Meta即可。
回答6:<a href='http://m.b3g6.com/wenda/xx.xlsx'></a>
相關(guān)文章:
1. javascript - sublime快鍵鍵問(wèn)題2. javascript - immutable配合react提升性能?3. 配置Apache時(shí),添加對(duì)PHP的支持時(shí)語(yǔ)法錯(cuò)誤4. 實(shí)現(xiàn)bing搜索工具urlAPI提交5. javascript - vue-router 地址改變數(shù)據(jù)未改變6. javascript - html5多個(gè)label中其中一個(gè)觸發(fā)change,如何判斷是哪一個(gè)出發(fā)了change7. javascript - 移動(dòng)端上不能實(shí)現(xiàn)拖拽布局嗎?8. css - 寫(xiě)頁(yè)面遇到個(gè)布局問(wèn)題,求大佬們幫解答,在線等,急!~9. phpstudy8.1支持win11系統(tǒng)嗎?10. javascript - nodejs關(guān)于進(jìn)程間發(fā)送句柄的一點(diǎn)疑問(wèn)

網(wǎng)公網(wǎng)安備