Atitit.导出excel功能的设计 与解决方案
Atitit.导出excel功能的设计 与解决方案
1.2. Js jquery方案(推荐)jquery.table2excel1
1.1. 项目起源于背景
正好我们项目也正好在研究更快速的导出excel的方法。。昨天终于有了结论。。除了我们常用的后端导出excel,前端js导出excel效果也不错,估计可以覆盖90%的领域。。。所以更好的导出方案就是 js导出(90%)+后端语言导出(10%),取长补短,结合使用
1.2. Js jquery方案(推荐)jquery.table2excel
优点是快速简单实现,将逻辑前移,带来更加强大的跨平台性跨后端语言。。而且生成的内容是真正xlsx excel格式的(zip 压缩的xml格式)。
一般对于一千条以内的很合适
一款基于jquery.table2excel插件实现的可以根据你的需要导出表格中的内容,不需要的行可以不导出。需要此款代码的朋友们可以前来下载使用。本段代码兼容目前最新的各类主流浏览器
使用table2excel表格插件需要在页面中引入jquery和jquery.table2excel.js文件。
<script type="text/javascript" src="js/jquery.min.js"></script><script type="text/javascript" src="js/jquery.table2excel.js"></script>
原理::使用遍历表格,生成二进制excel字节组,然后使用h5 api ArrayBuffer blob触发浏览器执行下载动作
作者:: ★(attilax)>>> 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 汉字名:艾龙, EMAIL:1466519819@qq.com
转载请注明来源: http://blog.csdn.net/attilax
1.3. 服务器方案
优点是性能,特别对于超过一千条的记录
1.4. 详细信息
如果表格中的某一行不需要导出到Excel中,可以为这一行添加.noExl class类,该class类会在插件初始化时通过参数被指定为不被导出的数据。
初始化插件
在页面DOM元素加载中完毕之后,可以通过下面的方法来初始化table2excel插件。
$("#table2excel").table2excel({
// 不被导出的表格行的CSS class类
exclude: ".noExl",
// 导出的Excel文档的名称
name: "Excel Document Name",
// Excel文件的名称
filename: "myExcelTable"
});
配置参数
table2excel插件的可用配置参数有:
·
exclude:不被导出的表格行的CSS class类。
·
·
name:导出的Excel文档的名称。
·
·
filename:Excel文件的名称。
·
·
exclude_img:是否导出图片。
·
·
exclude_links:是否导出超链接
·
·
exclude_inputs:是否导出输入框中的内容。
·
1.5. 参考
table2excel-将HTML表格内容导出到Excel中 - 推酷.html
Export Html Table To Excel Spreadsheet using jQuery - table2excel _ Free jQuery Plugins.html
JavaScript中的ArrayBuffer详细介绍_javascript技巧_脚本之家.htm
Web 端 js 导出csv文件(使用a标签) - oscar999的专栏 - 博客频道 - CSDN.NET.html
[JS进阶] JS 之Blob 对象类型 - oscar999的专栏 - 博客频道 - CSDN.NET.html