js导出table数据

导出数据,在后台功能中是一个比较重要的功能,一般情况由后端程序导出数据并生成文件供前端下载,后台生成有个好处是,不受分页影响。
不过有时我们也需要纯前端来导出数据,今天我们就聊一下前端导出。

插件:tableExport.js

用法

  1. html代码

id name
1 lilei
2 hanmeimei
  1. javascript代码



对源码的修改

从上面的代码中可以看到,我们可以通过传入fileName参数来定义导出文件的名称,但是在源码中,其实是不支持的,我们可以通过修改源码,达到我们的需求。
有两个需要修改的部分:

  1. 修改插件的defaults参数,增加fileName
var defaults = {
            separator: ',',
            ignoreColumn: [],
            tableName:'yourTableName',
            type:'csv',
            pdfFontSize:14,
            pdfLeftMargin:20,
            escape:'true',
            htmlContent:'false',
            fileName: 'exportData',
            consoleLog:'false'
            };
  1. 修改下载方式
window.open('data:application/vnd.ms-'+defaults.type+';filename=exportData.doc;' + base64data);

源码中用window.open的方式导出文件,这种方式不支持自定义文件名,我们可以通过在页面中增加一个a标签的方式来实现。

document.getElementById("export_data").href ='data:application/vnd.ms-excel;' + base64data;
document.getElementById("export_data").download = defaults.fileName;
document.getElementById("export_data").click();

好的,现在就可以导出数据了。

你可能感兴趣的:(js导出table数据)