我们经常会需要将数据导出为excel文件,php开发者大多使用phpexcel组件,它很强大,但也有点臃肿,对于小型数据的导出来说有些杀猪却用牛刀的感觉,cms大学小编向大家推荐一个在前端基于jq的插件jquery-table2excel.js,它是一个开源项目,地址https://github.com/rainabba/jquery-table2excel
下面为演示代码,要注意引入的js文件路径
折叠XML/HTML 代码
- <!DOCTYPE html>
 - <html>
 - <head>
 - <meta charset="UTF-8">
 - <title>html 表格导出 - cmsdx.com</title>
 - <script src="js/vendor/jquery-3.2.1.min.js"></script>
 - <script src="jquery.table2excel.js"></script>
 - <script language="JavaScript" type="text/javascript">
 - $(document).ready(function () {
 - $("#btnExport").click(function () {
 - $("#tableExcel").table2excel({
 - exclude : ".noExl", //过滤位置的 css 类名
 - filename : "导出文件名称" + new Date().getTime() + ".xls", //文件名称
 - name: "Excel Document Name.xlsx",
 - exclude_img: true,
 - exclude_links: true,
 - exclude_inputs: true
 - });
 - });
 - });
 - </script>
 - </head>
 - <body>
 - <div >
 - <button type="button" id="btnExport" onclick="method5('tableExcel')">导出Excel</button>
 - </div>
 - <div id="myDiv">
 - <table id="tableExcel" width="100%" border="1" cellspacing="0" cellpadding="0">
 - <tr>
 - <td colspan="5" align="center">html 表格导出Excel</td>
 - </tr>
 - <tr>
 - <td>列标题1</td>
 - <td>列标题2</td>
 - <td>类标题3</td>
 - <td>列标题4</td>
 - <td>列标题5</td>
 - </tr>
 - <tr>
 - <td>aaa</td>
 - <td>bbb</td>
 - <td>ccc</td>
 - <td>ddd</td>
 - <td>eee</td>
 - </tr>
 - <tr>
 - <td>AAA</td>
 - <td>BBB</td>
 - <td>CCC</td>
 - <td>DDD</td>
 - <td>EEE</td>
 - </tr>
 - <tr>
 - <td>FFF</td>
 - <td>GGG</td>
 - <td>HHH</td>
 - <td>III</td>
 - <td>JJJ</td>
 - </tr>
 - </table>
 - </div>
 - </body>
 - </html>
 
在页面dom结构加载完成后,我们可以通过下面的代码对插件进行初始化
折叠JavaScript 代码
- $("#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:是否导出输入框中的内容。
常见问题:
有些朋友在使用中遇到了数字型的值被输出成了科学记数法的问题,例如身份证号,导致数字不正确,我们可以给容器增加内联样式来解决这个问题,使用方式如下
折叠XML/HTML 代码
- <td style="mso-number-format:'\@';"> 数值 </td>
 

