1、bootstrapTable簡單使用:javascript
<link rel="stylesheet" href="./static/libs/bootstrap/css/bootstrap.css"> <link rel="stylesheet" href="./static/libs/bootstrap-table-master/bootstrap-table.css"> <script src="./static/libs/jquery/jquery-1.11.2.min.js"></script> <script src="./static/libs/bootstrap/js/bootstrap.js"></script> <script src="./static/libs/bootstrap-table-master/bootstrap-table.js"></script> <script src="./static/libs/bootstrap-table-master/locale/bootstrap-table-zh-CN.js"></script> <div id="item_info_toolbar"> <a href="javascript:void(0)" class="btn btn-default btn-sm" id="btnAddDept" style="text-decoration: none;" data-toggle="modal" data-target="#deptModal">建立</a> <a href="javascript:void(0)" class="btn btn-default btn-sm" id="btnAddDept" style="text-decoration: none;" data-toggle="modal" data-target="#adm-user-create-user">編輯</a> <a href="javascript:void(0)" class="btn btn-default btn-sm" id="btnAddDept" style="text-decoration: none;">刪除</a> <a href="javascript:void(0)" class="btn btn-default btn-sm" id="btnEditDept" style="text-decoration: none;">排序</a> <a href="javascript:void(0)" class="btn btn-default btn-sm" id="btnEditDept" style="text-decoration: none;" onclick="getSelectValue()">獲取選中行值</a> </div> <table id="table" data-toggle="table" class="table table-striped"> <thead> <tr> </tr> </thead> </table>
<script>
$('#table').bootstrapTable('destroy').bootstrapTable({ url: 'data/' + 'adm-user' + '.json', method: 'POST', uniqueId: 'id', // 綁定ID,不顯示 striped: false, //是否顯示行間隔色 cache: false, //是否使用緩存,默認爲true,因此通常狀況下須要設置一下這個屬性(*) sortable: true, //是否啓用排序 sortOrder: "asc", //排序方式 sidePagination: "client", //分頁方式:client客戶端分頁,server服務端分頁(*) undefinedText: '--', //singleSelect: true, // 單選checkbox,默認爲複選 showRefresh : true, // 顯示刷新按鈕 showColumns : true, // 選擇顯示的列 toolbar: '#item_info_toolbar', // 搜索框位置 search: true, // 搜索開啓, strictSearch: true, clickToSelect: true, // 點擊選中行 pagination: true, //是否顯示分頁 pageNumber:1, //初始化加載第一頁,默認第一頁,並記錄 pageSize:5,//每頁顯示的數量 pageList: [5, 10, 20, 50, 100],//設置每頁顯示的數量 paginationPreText:"上一頁", paginationNextText:"下一頁", paginationLoop:false, //showToggle: true, //是否顯示詳細視圖和列表視圖的切換按鈕 //cardView: false, //是否顯示詳細視圖 //detailView: false, //是否顯示父子表 //showPaginationSwitch: true, //獲得查詢的參數 queryParams : function (params) { //這裏的鍵的名字和控制器的變量名必須一直,這邊改動,控制器也須要改爲同樣的 var temp = { rows: params.limit, //頁面大小 page: (params.offset / params.limit) + 1, //頁碼 sort: params.sort, //排序列名 sortOrder: params.order //排位命令(desc,asc) }; return temp; }, columns: [ { checkbox: true },{ field: 'username', title:'用戶名', valign: 'middle', width: '16%', sortable: true },{ field: 'fullname', title:'姓名', width: '16%' },{ field: 'status', title:'密碼認證', width: '16%' },{ field: 'availableSpace', title:'智能卡認證', valign: 'middle', width: '16%' },{ field: 'totalSpace', title:'我的空間配額', width: '16%' },{ field: 'storageServer', title:'私密空間配額', formatter: operateFormatter } ], onLoadSuccess: function () { alert('表格加載成功!'); }, onLoadError: function () { showTips("數據加載失敗!"); }, onDblClickRow: function (row, $element) { var id = row.ID; //EditViewById(id, 'view'); }, rowStyle: function (row, index) { //設置行的特殊樣式 //這裏有5個取值顏色['active', 'success', 'info', 'warning', 'danger']; var strclass = ""; if (index == 1) { strclass = "warning"; console.log(row); } return { classes: strclass } } }); function getSelectValue(){ var a = $table.bootstrapTable('getSelections');//獲取選中行的數據 if(a.length > 0){ console.log(a); } } function operateFormatter (value, row, index) { var result = '<button class="btn btn-action" title="激活USBKEY認證" onclick=""><i class="glyphicon glyphicon-pencil"></i></button>' return result; } </script>
adm-user: css
[
{
"id": 2018100701, "username": "user1", "fullname": "用戶1", "status": "啓用", "availableSpace": "10GB", "totalSpace": "20GB", "storageServer" : "nas1" }, { "id": 2018100702, "username": "user2", "fullname": "用戶2", "status": "啓用", "availableSpace": "10GB", "totalSpace": "20GB", "storageServer" : "nas1" }, { "id": 2018100703, "username": "user3", "fullname": "用戶3", "status": "啓用", "availableSpace": "10GB", "totalSpace": "20GB", "storageServer" : "nas1" }, { "id": 2018100704, "username": "user4", "fullname": "用戶4", "status": "啓用", "availableSpace": "10GB", "totalSpace": "20GB", "storageServer" : "nas1" }, { "id": 2018100705, "username": "user5", "fullname": "用戶5", "status": "啓用", "availableSpace": "10GB", "totalSpace": "20GB", "storageServer" : "nas1" }, { "id": 2018100706, "username": "user6", "fullname": "用戶6", "status": "啓用", "availableSpace": "10GB", "totalSpace": "20GB", "storageServer" : "nas1" }, { "id": 2018100707, "username": "user7", "fullname": "用戶7", "status": "啓用", "availableSpace": "10GB", "totalSpace": "20GB", "storageServer" : "nas1" }, { "id": 2018100708, "username": "user8", "fullname": "用戶8", "status": "啓用", "availableSpace": "10GB", "totalSpace": "20GB", "storageServer" : "nas1" }, { "id": 2018100709, "username": "user9", "fullname": "用戶9", "status": "啓用", "availableSpace": "10GB", "totalSpace": "20GB", "storageServer" : "nas1" }, { "id": 2018100710, "username": "user10", "fullname": "用戶10", "status": "啓用", "availableSpace": "10GB", "totalSpace": "20GB", "storageServer" : "nas1" }, { "id": 2018100711, "username": "user11", "fullname": "用戶11", "status": "啓用", "availableSpace": "10GB", "totalSpace": "20GB", "storageServer" : "nas1" } ]
2、 利用bootstrapTable來設置要隱藏和顯示的列:html
$(function () { //初始化table LoadingDataListOrderRealItems(); //隱藏列 $('#tableOrderRealItems').bootstrapTable('showColumn', 'ShopName'); $('#tableOrderRealItems').bootstrapTable('hideColumn', 'GoodsId'); $('#tableOrderRealItems').bootstrapTable('hideColumn', 'OrderItemId'); $('#tableOrderRealItems').bootstrapTable('hideColumn', 'ShopName'); $('#tableOrderRealItems').bootstrapTable('hideColumn', 'SellerName'); });
3、 也能夠直接使用hidden屬性來設置:java
columns: [
{
field: 'OrderId', title: '#', align: 'center', }, { field: 'OrderItemId', title: 'OrderItemId', align: 'left', hidden:true, }, { field: 'GoodsId', title: 'GoodsId', align: 'left', hidden:true, }, { field: 'OrderCode', title: '訂單編號', align: 'left', } ]
4、如何獲取數據:jquery
方式一:表格中配置ajax
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap/4.1.1/css/bootstrap.min.css"> <!-- Latest compiled and minified CSS --> <link rel="stylesheet" href="http://cdnjs.cloudflare.com/ajax/libs/bootstrap-table/1.12.1/bootstrap-table.min.css"> <script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.js"></script> <script src="https://cdn.bootcss.com/bootstrap/4.1.1/js/bootstrap.js"></script> <!-- Latest compiled and minified JavaScript --> <script src="http://cdnjs.cloudflare.com/ajax/libs/bootstrap-table/1.12.1/bootstrap-table.min.js"></script> <!-- Latest compiled and minified Locales --> <script src="http://cdnjs.cloudflare.com/ajax/libs/bootstrap-table/1.12.1/locale/bootstrap-table-zh-CN.min.js"></script> </head> <body> <table id="table" data-toggle="table" data-url="data/table.json" data-pagination="true" data-page-number=1 data-page-size=10 data-search=true data-show-refresh=true data-show-pagination-switch=true data-search-align="left" > <thead> <tr> <th data-field="id">id</th> <th data-field="name">name</th> <th data-field="price">price</th> <th data-field="column1">column1</th> <th data-field="column2">column2</th> <th data-field="column3">column3</th> <th data-field="column4">column4</th> </tr> </thead> </table> <script> $(function () { //隱藏列 $('#table').bootstrapTable('hideColumn', 'column4'); }) </script> </body> </html>
方式二:JavaScript配置編程
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap/4.1.1/css/bootstrap.min.css"> <!-- Latest compiled and minified CSS --> <link rel="stylesheet" href="http://cdnjs.cloudflare.com/ajax/libs/bootstrap-table/1.12.1/bootstrap-table.min.css"> <script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.js"></script> <script src="https://cdn.bootcss.com/bootstrap/4.1.1/js/bootstrap.js"></script> <!-- Latest compiled and minified JavaScript --> <script src="http://cdnjs.cloudflare.com/ajax/libs/bootstrap-table/1.12.1/bootstrap-table.min.js"></script> <!-- Latest compiled and minified Locales --> <script src="http://cdnjs.cloudflare.com/ajax/libs/bootstrap-table/1.12.1/locale/bootstrap-table-zh-CN.min.js"></script> </head> <body> <button onclick="getData('table2')">點擊獲取數據</button> <table id="table" data-toggle="table"> <thead> <tr> <th data-field="id">id</th> <th data-field="name">name</th> <th data-field="price">price</th> <th data-field="column1">column1</th> <th data-field="column2">column2</th> <th data-field="column3">column3</th> <th data-field="column4">column4</th> </tr> </thead> </table> <script> function getData(url){ $('#table').bootstrapTable('destroy').bootstrapTable({ //'destroy' 是必需要加的==做用是加載服務器// //數據,初始化表格的內容Destroy the bootstrap table. url: 'data/' + url + '.json', pagination: true, pageList:[], pageNumber:1, pageSize:5,//每頁顯示的數量 paginationPreText:"上一頁", paginationNextText:"下一頁", paginationLoop:false, columns: [ { field: 'id', title:'id', valign: 'middle', },{ field: 'name', title:'name' },{ field: 'price', title:'price' },{ field: 'column1', title:'請求內容' },{ field: 'column2', title:'請求內容' },{ field: 'column3', title:'請求內容' },{ field: 'column4', title:'請求內容' } ] }) } </script> </body> </html>
[
{
"id": 0, "name": "Item 0", "price": "$0", "column1": "C 10", "column2": "C 20", "column3": "C 30", "column4": "C 40" }, { "id": 1, "name": "Item 1", "price": "$1", "column1": "C 10", "column2": "C 20", "column3": "C 30", "column4": "C 40" }, { "id": 2, "name": "Item 2", "price": "$2", "column1": "C 10", "column2": "C 20", "column3": "C 30", "column4": "C 40" }, { "id": 3, "name": "Item 3", "price": "$3", "column1": "C 10", "column2": "C 20", "column3": "C 30", "column4": "C 40" }, { "id": 4, "name": "Item 4", "price": "$4", "column1": "C 10", "column2": "C 20", "column3": "C 30", "column4": "C 40" }, { "id": 5, "name": "Item 5", "price": "$5", "column1": "C 10", "column2": "C 20", "column3": "C 30", "column4": "C 40" }, { "id": 6, "name": "Item 6", "price": "$6", "column1": "C 10", "column2": "C 20", "column3": "C 30", "column4": "C 40" }, { "id": 7, "name": "Item 7", "price": "$7", "column1": "C 10", "column2": "C 20", "column3": "C 30", "column4": "C 40" }, { "id": 8, "name": "Item 8", "price": "$8", "column1": "C 10", "column2": "C 20", "column3": "C 30", "column4": "C 40" }, { "id": 9, "name": "Item 9", "price": "$9", "column1": "C 10", "column2": "C 20", "column3": "C 30", "column4": "C 40" }, { "id": 10, "name": "Item 10", "price": "$10", "column1": "C 10", "column2": "C 20", "column3": "C 30", "column4": "C 40" }, { "id": 11, "name": "Item 11", "price": "$11", "column1": "C 10", "column2": "C 20", "column3": "C 30", "column4": "C 40" }, { "id": 12, "name": "Item 12", "price": "$12", "column1": "C 10", "column2": "C 20", "column3": "C 30", "column4": "C 40" }, { "id": 13, "name": "Item 13", "price": "$13", "column1": "C 10", "column2": "C 20", "column3": "C 30", "column4": "C 40" }, { "id": 14, "name": "Item 14", "price": "$14", "column1": "C 10", "column2": "C 20", "column3": "C 30", "column4": "C 40" }, { "id": 15, "name": "Item 15", "price": "$15", "column1": "C 10", "column2": "C 20", "column3": "C 30", "column4": "C 40" }, { "id": 16, "name": "Item 16", "price": "$16", "column1": "C 10", "column2": "C 20", "column3": "C 30", "column4": "C 40" }, { "id": 17, "name": "Item 17", "price": "$17", "column1": "C 10", "column2": "C 20",