bootstrap-table扩展tableExprot组件,如何导出所有数据(服务端分页)

如果是客户端分页(client),可以通过参数

exportDataType: “all”, // (basic’, ‘all’, ‘selected’.)导出全部数据

如果分页方式是 sidePagination: “server”, 服务端分页,那么导出的数据始终是当前页

// 关于分页的文件---注意:bootstrap-table一定要用最新版本
<script type="text/javascript" src="${ctx}/js/bootstrap-table/tableExport.min.js"></script>
<script type="text/javascript" src="${ctx}/js/bootstrap-table/bootstrap-table-export.js"></script>
<script type="text/javascript" src="${ctx}/js/bootstrap-table/xlsx.core.min.js"></script>
<script type="text/javascript" src="${ctx}/js/bootstrap-table/FileSaver.min.js"></script>
// 部分代码
// 表格初始化
  $('#queryTable').bootstrapTable({
                        url: operate.url.tableListUrl,         //请求后台的URL(*)
                        method: 'post',                      //请求方式(*)
                        toolbar: '#toolbar',                //工具按钮用哪个容器
                        striped: false,                      //是否显示行间隔色
                        cache: false,                       //是否使用缓存,默认为true,所以一般情况下需要设置一下这个属性(*)
                        pagination: true,                   //是否显示分页(*)
                        sortable: false,                     //是否启用排序
                        sortOrder: "asc",                   //排序方式
                        queryParams: queryParams,//传递参数(*)
                        sidePagination: "server",           //分页方式:client客户端分页,server服务端分页(*)
                        pageNumber:1,                       //初始化加载第一页,默认第一页
                        pageSize: 10,                       //每页的记录行数(*)
                        pageList: [10, 25, 50, 100],        //可供选择的每页的行数(*)
                        search: false,                       //是否显示表格搜索,此搜索是客户端搜索,不会进服务端,所以,个人感觉意义不大
                        strictSearch: true,
                        showColumns: false,                  //是否显示所有的列
                        showRefresh: false,                  //是否显示刷新按钮
                        minimumCountColumns: 2,             //最少允许的列数
                        clickToSelect: false,                //是否启用点击选中行
                        uniqueId: "ID",                     //每一行的唯一标识,一般为主键列
                        showToggle:false,                    //是否显示详细视图和列表视图的切换按钮
                        cardView: false,                    //是否显示详细视图
                        detailView: false,                   //是否显示父子表
                        columns: [
                            // {field: 'id', title: 'ID', align: 'center', valign: 'middle'},
                            {field: 'Name', title: '部门', align: 'center', valign: 'middle', width:10},
                            {field: 'Type', title: '类型', align: 'center', valign: 'middle', formatter: this_.mapMonitorTypeFormatter, width:10},
                            {field: 'Level', title: '等级', align: 'center', valign: 'middle', formatter: this_.mapAlarmLevelFormatter, width:8},
                            {field: 'Title', title: '标题', align: 'center', valign: 'middle', width:14},
                            {field: 'Switch', title: '开关', align: 'center', valign: 'middle', formatter: this_.mapAlarmSwitchFormatter, width:8},
                            {field: 'rDate', title: '时间', align: 'center', valign: 'middle', formatter: this_.timerStatusFormatter, width:15},
                          
                            {field: 'DealStatus', title: '处理状态', align: 'center', valign: 'middle', formatter: this_.mapAlarmDealStatusFormatter, width:10},
                            {field: 'action', title: '操作',  formatter: operate.tableInit.actionFormatter, events: operate.tableInit.actionEvent, width:15}
                        ],
                        showExport: true,      //是否显示导出
                        buttonsAlign:"left",  //按钮位置
                        exportDataType: "all",              //basic', 'all', 'selected'.
                        exportTypes:['excel'],  //导出文件类型
                        Icons:'glyphicon glyphicon-export',
                        // exportButton: $('#export'),     //为按钮btn_export  绑定导出事件  自定义导出按钮(可以不用)
                        exportOptions: {
                            ignoreColumn: [8],            //忽略某一列的索引
                            fileName: '**数据',              //文件名称设置
                            worksheetName: 'Sheet1',          //表格工作区名称
                            tableName: '**数据表',
                            excelstyles: ['background-color', 'color', 'font-size', 'font-weight']
                        }
                    })
                  //  改变limit,可以导出全部数据  
                    function queryParams(params) {
						    var options = $table.bootstrapTable('getOptions')
						    if (!options.pagination) {
						      params.limit = options.totalRows
						    }
						    return params
						  }
 // 纪念一下,写了好半天,然后分页后台做了,因为数据量很大,前端页面容易崩
  // queryParams: function(params){
                //     var options = $('#queryTable').bootstrapTable('getOptions')
                //     console.log(options.pagination )
                //     if (requestParam === undefined || requestParam === null) {
                //                 requestParam = operate.getQueryParam();
                //             }
                //     if (!options.pagination) {
                //         params.limit = options.totalRows
                //         params.offset = 0;
                //     }
                //     return {limit: params.limit, offset: params.offset, data: requestParam};
                //
                // },

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值