datatable导出excel、word、png、pdf等样式
2016-08-19 17:21
381 查看
最近在添加了datatable导出excel的功能,下面内容包括了将datatable数据转为json、text、excel、word、png、pdf等格式的实现过程
最终页面如下:
导出excel、text及json显示效果如下:
1.首先引入必须的js文件和css样式
这些文件可在bootstrap官网中找到,tableExport.js可在网页中自行下载
2.body中的页面
应用到实际项目中时出现只能导出第一页的数据,不能将datatable中的数据全部导出,解决方法,导出时重新定义datatable并设置分页不显示,这样就可以导出所有的数据
最终页面如下:
导出excel、text及json显示效果如下:
1.首先引入必须的js文件和css样式
<link href="bootstrap.min.css" rel="stylesheet"> <script src="jquery.2.1.1.min.js"></script> <script src="bootstrap.min.js"></script> <script src="jquery.dataTables.min.js"></script>
<script src="../dist/tableExport.js"></script>
这些文件可在bootstrap官网中找到,tableExport.js可在网页中自行下载
2.body中的页面
<h3>datatable动态数据</h3> <table class="table table-striped table-bordered table-hover" id="table1" > <thead> </thead> <tbody> </tbody> </table> <div id="export"> <button class="btn btn-info"> <a data-type="json" href="javascript:;">导出json</a> </button> <button class="btn btn-info"> <a data-type="txt" href="javascript:;">导出txt</a> </button> <button class="btn btn-info"> <a data-type="csv" href="javascript:;">导出csv</a> </button> <button class="btn btn-info"> <a data-type="xml" href="javascript:;">导出xml</a> </button> <button class="btn btn-info"> <a data-type="xls" href="javascript:;">导出excel</a> </button> <button class="btn btn-info"> <a data-type="doc" href="javascript:;">导出word</a> </button> <button class="btn btn-info"> <a data-type="image" href="javascript:;">导出图片</a> </button> <button class="btn btn-info"> <a data-type="pdf" href="javascript:;">导出pdf</a> </button> </div>3.脚本实现
<script> $(function(){ $("#table1").dataTable({ "destroy":true, "bPaginate":false, "bFilter":false, /*"oLanguage":{ "sInfo":"显示 _START_ 至 _END_ 条 本页共 _TOTAL_ 条", "sZeroRecords":"没有数据", }, */ "aoColumns":[ {"data":"name","sTitle":"姓名"}, {"data":"sex","sTitle":"性别"}, {"data":"age","sTitle":"年龄"}, {"data":"grade","sTitle":"成绩"}, /* {"data":" ","sTitle":"操作","bSortable":false, "mRender":function(data,type,full){ return "<div class='hidden-sm hidden-xs action-buttons'><a id='detail' class='blue' title='查看详情'><i style='cursor:pointer' class='ace-icon fa fa-info-circle bigger-120 blue'></i></a> <a href='#modal-table-editShop' data-toggle='modal' id='edit' class='blue' title='修改'><i class='ace-icon fa fa-edit bigger-130'></i></a></div>"; }}, */ ], "aaData":[ {"name":"张三","sex":"男","age":"19","grade":"100"}, {"name":"张三","sex":"男","age":"19","grade":"100"}, {"name":"张三","sex":"男","age":"19","grade":"100"}, {"name":"张三","sex":"男","age":"19","grade":"100"}, {"name":"张三","sex":"男","age":"19","grade":"100"}, {"name":"李四","sex":"男","age":"21","grade":"99"}, {"name":"王丽","sex":"1","age":"22","grade":"45"}, ], }); }) var $exportLink = document.getElementById('export'); $exportLink.addEventListener('click', function(e){//点击事件
//在此处可以重新定义datatable数据,让datatable不显示分页 e.preventDefault(); if(e.target.nodeName === "A"){ tableExport('table1', 'table', e.target.getAttribute('data-type')); } }, false); </script>其中aaData中的数据可以是动态的,即通过ajax请求数据在处理数据格式,绑定到aaData属性中即可。
应用到实际项目中时出现只能导出第一页的数据,不能将datatable中的数据全部导出,解决方法,导出时重新定义datatable并设置分页不显示,这样就可以导出所有的数据
相关文章推荐
- DataTable导出为word,excel,html,csv,pdf,.txt
- html导出table支持(excel,png,word,pdf<pdf不太行,中文不支持>)
- DataTable导出为word,excel,html,csv,pdf,.txt
- DataTable导出为word,excel,html,csv,pdf,.txt
- 使用第三方组件NPOI和iTextSharp根据DataTable导出Excel、Word、Pdf
- datatable导出到Word / Excel / PDF / HTML .NET
- jasperreport + ireport 导出各种类型文件(word,excel,html,pdf,打印) .
- 支持 导入 导出Excel,导出Word, 导出PDF。
- GridView 导出到 Word/Excel/PDF/CSV
- ActiveReports 报表控件 : 导出 PDF、Word 和 Excel文件到客户端
- C#在线预览文档(word,excel,pdf,txt,png)
- C#在线预览文档(word,excel,pdf,txt,png)
- asp.net 生成导出word表单 ,导出excel; dataTable生成xls文件,返回前台下载;asp.net启动excel错误 80070005;excel-xls columnName 不能改变; 读写excel的开源利器NPOI; 设置excel Cell的数据类型;
- 水晶报表导出为word,excel和pdf格式
- 水晶报表显示数据和 导出Excel、Word、Pdf
- Ireport 报表导出 Poi + ireport 导出pdf, word ,excel ,htm
- DataTable、GridView、DataList导出至Word或Excel(已验证)
- .net中将DataTable导出到word、Excel、txt、htm的方法
- DataTable导出到excel word