代码是现在导出按钮的js
function exportTo(){
var rows = $('#exampleTable').bootstrapTable('getSelections');
if (rows.length == 0) {
layer.msg("请选择要导出模板的记录");
return;
}
layer.confirm("确认要导出选中的'" + rows.length + "'条数据吗?", {
btn : [ '确定', '取消' ]
// 按钮
}, function() {
var ids = new Array();
// 遍历所有选择的行数据,取每条数据对应的ID
$.each(rows, function(i, row) {
ids[i] = row['id'];
});
var str = String(ids);
location.href = prefix + "/exportExcelUseTemplateRemoveMonth?ids="+str ;
layer.close(layer.index);
}, function() {
});
}
想问有什么好的方法?
服务器端分页的话,需要后台实现导出,给后台传递当前的筛选条件进行导出。下面接口改下,传递查询条件,接口获取条件过滤出数据导出就行
location.href = prefix + "/exportExcelUseTemplateRemoveMonth?ids="+str ;
不想改后台接口,可以用bootstrap-table-export
插件,支持服务器端分页导出。当然配置onLoadSuccess事件,然后自己写js点击分页获取分页数据中的id后传递给上面的接口也行。
或者让后台写一个显示所有数据的接口,通过接口获取数据后用js-xlsx导出