JS Poi Excel导出

效果图:

由于项目框架采用的ligerui,所以写了一个基于ligerui excel 导出。采用poi方式,可实现冻结行列,图片,原样式等功能导出。

使用代码:

  (JQuery扩展)

 $("#maingrid").tableExport({
                title: "excel标题名称",
                fileName: "excel导出文件名称",
                islageruigrid: true, // 是否基于ligerui
                ligerui: {
                    isGetAll: true,
                    gridInstance: g,
                    serialNumberWidth: "50"
                },
                frozen: { c: 1, r: 2 } //冻结列 (c:列 r:行)
            });

参数:

        title: "", // 标题为空 则不设置标题
        exclude: ".noExl", // 不是xls格式: 只有加在table tr 或 td 上class 有效  xls格式;任意
        fileType: "xlsx",  // xls格式:导出使用table2excel.js (需传入css样式,否则无样式)
        fileName: "Excel Document Name", // 文件名 同sheet名
        islageruigrid: false, // 表格是否是ligerGrid (ligeruigrid 必须指定true,否则显示不正确)
        ligerui: {
            isGetAll: false, //  是否获取ligerGrid全部数据(前提需配置isligerGrid:true) ,如果获取全部数据失败,则导出当前页表格数据
            gridInstance: null, // ligerGrid 对象 (如果为null,则获取当前页数据)
            serialNumberWidth: "27", // 序号宽度
            RenderColumns: {} // (废除)自定义计算列{列名:{render:callback(回调方法 参数:data(该行数据) return: 计算结果)}} 
            //source: {}   // 本地数据指定数据源 导出全部数据 否则只导出当前页面数据. 若不是本地数据 则无需指定.(优先级大于服务段获取全部数据)
        },
        frozen: null, // 冻结信息 (c:冻结列, r:冻结行)
        // xls格式 样式  (如果xls格式并且是ligeruigrid 或者 浏览器不支持blob , 前台未传入css样式,则默认加载ligerui_grid_export_excel.css 样式 ,若路径改变则需重新指定 )
        // xlsx格式  如果浏览器不支持blob,则自动转换xls格式,需传入css样式
        css: [], // 传入自定义样式 (否则使用默认样式)

以上纯属个人想法,不喜勿喷 ,欢迎指正。

Demo地址:https://download.csdn.net/download/haiyangyunbao813/10890544

猜你喜欢

转载自blog.csdn.net/haiyangyunbao813/article/details/85612280