1. 程式人生 > >Bootstrap-table實現查詢、分頁、匯出、引數設定及前後端程式碼示例詳解

Bootstrap-table實現查詢、分頁、匯出、引數設定及前後端程式碼示例詳解

$(function(){ initTable(); }); function initTable() { //先銷燬表格 $("#bootstrapTable").bootstrapTable({ //表格高度 height: getHeight(), //伺服器資料的請求方式 'get' 或 'post'。 method: 'get', //設定為 true 會有隔行變色效果 striped: true, //設定為 true 會在表格底部顯示分頁條。 pagination: true
, //請求後臺的URL url: '/MsgDealCenterAction/listData', //伺服器返回的資料型別。 dataType: 'json', //工具按鈕用哪個容器 toolbar: '#toolbar', //是否使用快取,預設為true,所以一般情況下需要設定一下這個屬性 cache: false, //設定為 true 啟用分頁條無限迴圈的功能 // paginationLoop: true, //設定在哪裡進行分頁,可選值為 'client' 或者 'server'。設定 'server'時,必須設定伺服器資料地址(url)或者重寫ajax方法
sidePagination: 'server', //初始化載入第一頁,預設第一頁 pageNumber: 1, //每頁的記錄行數 pageSize: 10, //可供選擇的每頁的行數 pageList: [10,15,20, 50, 100], //設定為false 將禁止所有列的排序。 sortable: true, //設定預設排序為 name sortName: 'insert_time', //定義排序方式,'asc' 或者 'desc'。
sortOrder: "desc", //是否顯示重新整理按鈕 showRefresh: true, //是否顯示內容列下拉框。 showColumns: true, //顯示匯出外掛 showExport: true, //是否顯示右上角的搜尋框 search: false, //是否顯示切換檢視(table/card)按鈕。 showToggle:false, //是否啟用點選選中行 // clickToSelect: true, //設定為undefined可以獲取pageNumber,pageSize,searchText,sortName,sortOrder //設定為limit可以獲取limit, offset, search, sort, order queryParamsType:'undefined', //請求伺服器資料 queryParams: function queryParams(params){ var param = { pageNumber: params.pageNumber, pageSize: params.pageSize, sortName: params.sortName, sortOrder: params.sortOrder }; return param; }, //載入成功時執行 onLoadSuccess: function(data){ console.log("載入成功"); }, //載入失敗時執行 onLoadError: function(status){ console.log("載入資料失敗"+status); }, columns: [ { title: "全選", field: "select", checkbox: false, width: 20,//寬度 align: "left",//水平 valign: "middle", formatter: function (value, row, index) { return row._id; } },{ title: '編號',//標題 可不加 align: 'center', valign: 'middle', sortable: false, formatter: function (value, row, index) { return index+1; } },{ field: 'source', title: '產品線', align: 'center', valign: 'middle', sortable: false, width: '80px' },{ field: 'msg_type', title: '訊息型別', align: 'center', valign: 'middle', sortable: false },{ field: 'account_name', title: '賬號型別', align: 'center', valign: 'middle', sortable: false },{ field: 'msg_name', title: '訊息名稱', align: 'left', valign: 'middle', sortable: false },{ field: 'msg', title: '訊息內容', align: 'left', valign: 'middle', sortable: false, visible: false, //value【欄位值】row【row對應的整條記錄】index【行索引】 formatter: function format(value,row,index){ console.log(typeof(value)) // 縮排一個2個空格 return JSON.stringify(value, null, 2); } },{ field: 'msg_start_time', title: '起始有效時間', align: 'center', valign: 'middle', sortable: true },{ field: 'msg_end_time', title: '結束有效時間', align: 'center', valign: 'middle', sortable: true },{ field: 'insert_time', title: '入庫時間', align: 'center', valign: 'middle', sortable: true },{ field: 'update_time', title: '更新時間', align: 'center', valign: 'middle', sortable: true, visible: false }] }); } //獲取table的高度 function getHeight() { return $(window).height() - 100; }