项目开发的时候需要导出功能,一般情况有两种方法,一种是后端把数据弄好然后前端只是访问个地址就能实现下载,代码如下:

var url="后端写好的访问地址";
window.location=url;

另外一种就是后端返回文件流,前端进行相关下载,这时候我们使用原生ajax进行下载,代码如下:

var filename="demo.xls";//filename是你要下载的文件名,一般是以xls结尾,如“demo.xls”
var url=yourUrl;//url是你要访问的地址,就是那个返回文件流的地址
var xhr = new XMLHttpRequest();
xhr.onload = function () {if (this.status == "200") {if('msSaveOrOpenBlob' in navigator){//兼容ievar data= this.response;//获取响应var blob = new Blob([data], {type: 'application/vnd.ms-excel'});window.navigator.msSaveOrOpenBlob(blob, filename);return;}else{//获取响应文件流var blob = this.response;var aElem = document.createElement('a');//将文件流保存到a标签aElem.href = window.URL.createObjectURL(blob);aElem.download = filename;document.body.appendChild(aElem);aElem.onload = function (e) {window.URL.revokeObjectURL(aElem.href);};aElem.click();document.body.removeChild(aElem); // 下载完成移除元素}}
}
xhr.open("post", url, true);
//设置响应类型为blob类型,这一行一定要放在open后面,不然ie会报错!
xhr.responseType = "blob";
xhr.send();

前端下载导出Excel文件以及ie兼容问题相关推荐

  1. Vue前端表格导出Excel文件

    前言 分享一个Vue前端导出Excel文件的方法.记录学习! 功能需求:将表格的全部数据导出Excel格式的文件 前端:Vue3+Element-Plus 这个导出方法全部为前端操作,后端只需要传入表 ...

  2. js中文件流下载导出excel文件方法

    需求:数据列表导出为excel文件,通过向后台请求接口,返回的结果一般有两种方式: 1. 后台返回excel文件http地址(后台会在服务器生成,前端请求url再下载一遍,浪费服务器资源,优点:前端处 ...

  3. 前端页面导出excel文件功能(导出)

    方法一: 一.后台管理系统中常有导出excel功能,可定义一个函数,在其他.vue文件中导入即可用. 1.1定义函数 export function excelDown(res, name = &qu ...

  4. 批量下载/导出excel文件或音频文件(浏览器)

    不适用批量的详细案例可以看这边:http://t.csdn.cn/vrjPf 以下都是随便弄个点击事件@clike给她触发即可实现导出.当然了. api的使用,接口带blod getAPI: func ...

  5. vue前端下载本地excel文件

    <a class="template-download" href="./存货周转率及存货金额目标录入模板.xlsx" download><i ...

  6. vue 本地xlsx文件下载_前端vue下载导出excel和cvs文件

    // 导出 exportData () { this.$confirm('确认导出XXXXXX?', { confirmButtonText: '导出', cancelButtonText: '取消' ...

  7. 如何使用JavaScript实现纯前端读取和导出excel文件(转)

    转自小茗同学博客:https://www.cnblogs.com/liuxianan/p/js-excel.html js-xlsx 介绍 由SheetJS出品的js-xlsx是一款非常方便的只需要纯 ...

  8. h5页面如何预览excel文件_如何使用JavaScript实现前端导入和导出excel文件?(H5编辑器实战复盘)...

    前言 最近笔者终于把H5-Dooring的后台管理系统初步搭建完成, 有了初步的数据采集和数据分析能力, 接下来我们就复盘一下其中涉及的几个知识点,并一一阐述其在Dooring H5可视化编辑器中的解 ...

  9. 如何使用JavaScript实现前端导入和导出excel文件(H5编辑器实战复盘)

    前言 最近笔者终于把H5-Dooring的后台管理系统初步搭建完成, 有了初步的数据采集和数据分析能力, 接下来我们就复盘一下其中涉及的几个知识点,并一一阐述其在Dooring H5可视化编辑器中的解 ...

最新文章

  1. Linux rsync命令详解
  2. Linux下su与su -命令的区别
  3. SAP QM初阶之取样策略如何确定检验批Sample Size?
  4. hdu 4722(记忆化搜索)
  5. SAP Commerce Cloud JavaScript Storefront
  6. Java并发编程:从源码分析几道必问线程池的面试题?
  7. 《深入理解计算机系统》家庭作业
  8. Google浏览器划词翻译
  9. 使用html查看dicom,LEADTOOLS构建HTML5 DICOM/PACS查看器(二)
  10. Tcplistener服务端与tcpclient客户端使用
  11. java线程栅栏_java 线程栅栏
  12. FLV player 在线播放器【www.lantianye3.top】
  13. 什么是熔断? 熔断有哪几种状态 断路器的工作原理、如何开启熔断?
  14. Qt模仿QQ登录界面(一)
  15. 跨站脚本(XSS)漏洞
  16. C C++混合编译问题,gcc可以编译过,但是g++编译不过(restrict引起的问题)
  17. python listnode.val_Python 学习 -- 数据结构与算法 (五)
  18. Windows 更新安装错误 - 0x80070643
  19. Mockups知识点
  20. Rock5 KubeSphere常规部署

热门文章

  1. C语言学习笔记:(四)算法的5种表示方法
  2. 青课堂第一期--视频制作
  3. 深入掌握数组定义与初始化
  4. Unity3d打包图集
  5. HTML制作宣传片,楼盘宣传片制作方法
  6. mysql错误码与标识
  7. fiddler 抓包详细教程
  8. 机器学习--支持向量机(sklearn)
  9. 创意的居住氛围 隐含与众不同的品味
  10. Java实现文件格式转换(如amr转MP3)并上传FTP服务器实例