layui数据表格自带的导出功能只能导出当前页的数据

解决办法:

1.直接在分页的条数中选择个10000条,这样就直接导出最多10000条数据,但是页面会很卡,如果列超过20列那导出500行都会卡死

2.上代码:

    HTML

<button class="layui-btn layui-btn-hei" lay-submit lay-filter="export"> <i class="iconfont icon-export"></i> 导出</button>

JS

form.on('submit(export)', function (data) {
		var postData = {
		其他条件: data.field.其他,
		page:1,
		limit: 20000
	} //默认最多导出20000条,自己定,也可不设置分页数量,这样就需要后台添加一个新的查询方法或者写个动态sql

	$.post(url, postData, function(res) {
		if(res.code==0){
			table.exportFile('currentTableId', res.data, 'xls'); //表名 数据  格式
		}else{
			layer.msg(res.msg, {icon: 5});
		}
	})
});

注意:table.exportFile('currentTableId', res.data, 'xls'); //表名 数据  格式

table.exportFile方法是layui自带的,直接调用导出即可,后台处理几w条数据还是很快的,直接调用导出就不需要页面渲染,这样导出数据就很快

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐