參考鏈接1:
官網:http://bootstrap-table.wenzhixin.net.cn/zh-cn/home/
開始使用:http://bootstrap-table.wenzhixin.net.cn/zh-cn/getting-started/
文檔:http://bootstrap-table.wenzhixin.net.cn/zh-cn/documentation/
參考鏈接2:https://www.cnblogs.com/wlandwl/p/bootstrap_table.html
1、第一步、首先,先將基本數據信息以table分頁展示的出來。(即非彈出框分頁的數據,以table分頁的方式展示出來)。
1 <div style="width:100%; padding: 10px;"> 2 <table id="tablewrap1" 3 data-toggle="table" 4 data-locale="zh-CN" 5 data-ajax="ajaxRequest" 6 data-single-select="true" 7 data-side-pagination="server" //服務端分頁設置:在配置文件中設置分頁方式為服務器分頁。 分頁方式:client客戶端分頁,server服務端分頁(*) 8 data-striped="true" //設置為 true 會有隔行變色效果。 9 data-pagination="true" //是否支持分頁 10 data-pagination-first-text="首頁" 11 data-pagination-pre-text="上一頁" 12 data-pagination-next-text="下一頁" 13 data-pagination-last-text="末頁" class="fline-show-when-ready" 14 data-show-jumpto="true"> 15 <thead> 16 <tr> 17 <th data-field="id" data-formatter="idFormatter" data-width="40">xx編號</th> 18 <th data-field="name">xx名稱</th> 19 <th data-field="code">xx性別</th> 20 <th data-field="accessType" data-formatter="formatAccessType">xx年齡</th> 21 <th data-field="versionTag">xx生日</th> 22 <th data-field="updateDate" data-formatter="formatDate">xx時間</th> 23 <th data-field="status" data-formatter="formatStatus">xx地址</th> 24 <th data-field="operate" data-formatter="opFormatter">xx操作</th> 25 </tr> 26 </thead> 27 </table> 28 </div>
2、第二步、先將基本數據信息以table分頁展示的出來,使用的ajax將數據查詢出來,在上面所示的table展示出來。
1 function ajaxRequest(params) { 2 var pageSize = params.data.limit; 3 var pageNum = params.data.offset/pageSize + 1; 4 index = params.data.offset + 1; 5 var sort = params.data.sort? params.data.sort : "id"; 6 var order = params.data.order? params.data.order : "desc"; 7 var datas; 8 var items; 9 $.ajax({ 10 type:'POST', 11 url:'xxxAction!selectStudent.action?pageNum=' + pageNum + '&pageSize=' + pageSize, 12 dataType:'json', 13 async:true, 14 data:$('#searchForm').serialize(), 15 error: function(request, textStatus, errorThrown) { 16 fxShowAjaxError(request, textStatus, errorThrown); 17 }, 18 success:function(data){ 19 datas = data.result; 20 if(datas != null) { 21 count = datas.count; 22 } 23 items = datas.items?datas.items:[]; 24 params.success({ 25 total: count, 26 rows: items 27 }); 28 params.complete(); 29 } 30 }); 31 }
3、第三步、第一步<th data-field="operate" data-formatter="opFormatter">xx操作</th> 可以使用如下的方法,點擊xx操作的,然后可以彈出彈出框分頁信息。
1 function opFormatter(value,row) { 2 var tmp="'"+row.code+"'"; 3 var name="'"+row.name+"'"; 4 return '<a href="javascript:void(0)" onclick="getxxxDetails('+tmp+","+name+')">點擊彈出框分頁</a>'; 5 } 6 7 如下是彈出框的確定和關閉。 8 function getxxxDetails(code,name){ 9 $("#tablewrap2").bootstrapTable("selectPage",1); 10 initCatalogTable(code); 11 $("#tenantCatalogTablediv").dialog({ 12 title : name+"xxx", 13 width : "900", 14 'class' : "mydialog", 15 onClose : function() { 16 $(this).dialog("close"); 17 } 18 ,buttons : { 19 "關閉" : function() { 20 $(this).dialog("close"); 21 } 22 } 23 }); 24 }
4、第四步、彈出框分頁的table如下所示。
1 <div style="display: none;"> 2 <div style="width: 850; padding-top: 8px;" align="left" id="tenantCatalogTablediv" > 3 <table id="tablewrap2" 4 data-toggle="table" 5 data-locale="zh-CN" 6 data-single-select="true" 7 data-click-to-select="false" 8 data-side-pagination="client" //服務端分頁設置:在配置文件中設置分頁方式為服務器分頁。 分頁方式:client客戶端分頁,server服務端分頁(*) 9 data-striped="true" 10 data-pagination="true" 11 data-pagination-first-text="首頁" 12 data-pagination-pre-text="上一頁" 13 data-pagination-next-text="下一頁" 14 data-pagination-last-text="末頁" 15 > 16 <thead> 17 <tr> 18 <th data-field="url" data-formatter="paramsMatter">xx地址</th> 19 <th data-field="resultCode" >xx姓名</th> 20 <th data-field="resultMsg" data-formatter="paramsResultMsgr">xx性別</th> 21 <th data-field="createTime" data-formatter="formatDate">xx年齡</th> 22 </tr> 23 </thead> 24 </table> 25 </div> 26 </div>
5、第五步、第四步彈出框分頁的table使用如下ajax加載出數據。進行Bootstrap Table 數據綁定。
1 function initCatalogTable(code){ 2 $.ajax({ 3 type : "POST", 4 url : 'xxxAction!selectTeacher.action', 5 data : {'code' : code}, 6 async : false, 7 error : function(request, textStatus,errorThrown) { 8 fxShowAjaxError(request, textStatus,errorThrown); 9 }, 10 success : function(data) { 11 data=data.result; 12 if(data==null){ 13 $("#tablewrap2").bootstrapTable('load', []); 14 return; 15 } 16 $('#tablewrap2').bootstrapTable('load', data); 17 } 18 }); 19 }
待續......