Layui的table模块导出所有数据,无需修改前后端代码
发表于:2022-11-04 23:53:55浏览:2294次
layui table自带的导出功能仅导出单页的数据,搜索一番之后发现大部分都是通过另外发送ajax请求,让后端进行处理,或是生成excel下载链接,或是后端返回所有数据然后用table.exportFile
导出。其实可以利用render
,设置limit为总数量实现数据重新加载并导出。
var tableDataCount = 0;
table.render({
elem: '#datatable'
,url: '...数据接口'
,skin:'line'
,even:true
,method:'post'
,limit:20
,title:'数据'
,height:'full-60'
// ,size:'lg'
,cols: [[
{field:'id', width:80, title: 'ID', sort: true},
{field:'name',minWidth:'100', title: '姓名'},
]]
,page: true
, done: function(res, curr, count){
tableDataCount = count;//记录所有数据数量
}
});
//在html中设置一个导出全部的按钮,事件:
table.reload('datatable',{
page: 1,
limit:tableDataCount //加载所有数据
,where: {where}
,done:function (){
//导出所有数据
table.exportFile("datataleb",false,"xls");
//恢复数据分页显示
table.reload('datatable',{
page: 1,
limit:20
,where: {where}
,done:function (res, curr, count){
tableDataCount = count;
}
})
}
})
推荐文章
- 阿里云OSS文件上传速度技巧之内网地址上传
- 微信小程序如何跳转到另一个小程序的实现方法
- 移动端微信、企业微信中使用H5的input file时只能选择手机的图片,不能选择文档文件的解决方案
- ThinkPHP6接入阿里云短信实战:阿里云短信验证码登录
- 谷歌发布全新操作系统chromeOS Flex首个稳定版,可用于 PC 和 Mac
- php将一个包含父子关系的扁平化数组转换成树形菜单
- layui框架中layer父子页面相互交互的方法
- linux服务器定时任务crontab命令用法详解
- 勾股系列系统:项目任务协作管理系统 —— 勾股 DEV 3.8.31 发布
- 8个项目必备的JavaScript代码片段,建议加入到项目中