资讯专栏INFORMATION COLUMN

js 导出excel ,elsx格式

tuniutech / 1729人阅读

摘要:可以通过这个方法进行生成要导出的通过标签可以下载一个文件部分网友回复说导出的打开时有提示,这是因为这里的后缀名,带的时扩展名。通过模拟点击事件,触发下载操作最终代码

思路,js下载文件,无非就是生成base64,然后赋值给a标签进行导出下载

读取文件excel的filetype:

var input = document.querySelector("input");
input.addEventListener("change",function(){
    var file = this.files[0];
    fileOtions.type = file.type;
    var reader  = new FileReader();
    reader.onload = function(e){
        console.log(e.target.result);
    };
    reader.readAsDataURL(file);
},false);


//data:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;base64,

js中btoa可以把字符串转成base64编码。可以通过这个方法进行生成要导出的excel base64

btoa(unescape(encodeURIComponent("" + str + "
")))

通过标签a可以下载一个文件:

var a = document.createElement("a");
a.href = template;
//部分网友回复说导出的excel打开时有提示,这是因为这里的后缀名,带x的时扩展名。老版本的用xls应该就可以 了。
//a.download = "test.xlsx";
a.download = "test.xls";

通过模拟点击事件,触发下载操作

var evt = document.createEvent("MouseEvents");
evt.initEvent("click", false, false);
a.dispatchEvent(evt);

最终代码:

 function html2excel(table,name) {
        // var table= "testtest";
        var template = "data:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;base64," + btoa(unescape(encodeURIComponent("" + table + "
"))); var a = document.createElement("a"); a.href = template; a.download = name+".xlsx"; var evt = document.createEvent("MouseEvents"); evt.initEvent("click", false, false); a.dispatchEvent(evt); }

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/94905.html

相关文章

  • FineReport中JS如何自定义按钮导出

    FineReport支持多种不同的导出方式,直接使用FineReport内置导出按钮可以非常快捷方便的来对各种格式的输出,但是我们在web页面集成中的时候,往往只想将报表内容嵌入到iframe中,而工具栏以及工具栏上的按钮都会隐藏掉,而使用web页面自定义的按钮,那么,此时,这种自定义按钮如何实现导出呢? showImg(https://segmentfault.com/img/bVJR1H?w=...

    wujl596 评论0 收藏0
  • Vue+Element前端导入导出Excel

    摘要:前言业务场景由前台导入表格,获取批量数据。根据一个数组导出表格。每一个值是个对象,包含了两个属性。由于本人将和放到了同一级,这里引入是这样的。这几个文件不支持引入,所以需要来将他们挂载到全局环境下。若不足之处,欢迎大家指出,共勉。 1 前言 1.1 业务场景 由前台导入Excel表格,获取批量数据。 根据一个数组导出Excel表格。 2 实现原理 2.1 引入工具库 file-save...

    NikoManiac 评论0 收藏0
  • [SheetJS] js-xlsx模块学习指南

    摘要:简介是前端操作以及类似的二维表的最佳选择之一而是它的社区版本将注意力集中到了数据转换和导出上所以它支持相当多种类的数据解析和导出不仅仅局限于支持格式支持的导入格式支持的导出格式它可以解析符合格式的数据导出符合格式的数据利用中间层操作数据 简介 SheetJS是前端操作Excel以及类似的二维表的最佳选择之一,而js-xlsx是它的社区版本. js-xlsx将注意力集中到了数据转换和导出...

    zhaot 评论0 收藏0
  • 前端实现Excel导入和导出功能

    摘要:介绍最近项目中让实现一个导入导出的功能,查找了一些插件后发现这个插件,所以就尝试使用了一下,这里将使用方法和遇到的问题简单记录一下。 介绍 最近项目中让实现一个导入导出Excel的功能,查找了一些插件后发现js-xlsx这个插件,所以就尝试使用了一下,这里将使用方法和遇到的问题简单记录一下。 SheetJS js-xlsx 是一款能够读写多种格式表格的插件,浏览器支持良好,并且能在多个...

    Amio 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<