Bootstrap-table使用footerFormatter做統(tǒng)計(jì)列功能
寫(xiě)在前面:
在做表格的時(shí)候,難免會(huì)碰到做統(tǒng)計(jì)的時(shí)候。由于在項(xiàng)目中涉及到做統(tǒng)計(jì)的功能比較簡(jiǎn)單,之后也就沒(méi)有過(guò)多的去研究更復(fù)雜的,這里簡(jiǎn)單記錄下。
這次就直接先上圖:一個(gè)簡(jiǎn)單的例子

看到效果圖還是很好的,也比較的簡(jiǎn)單,下面看一下具體的代碼實(shí)現(xiàn),這里也就直接上代碼了。
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<% String scheme = request.getScheme();
String serverName = request.getServerName();
String contextPath = request.getContextPath();
int port = request.getServerPort();
//網(wǎng)站的訪(fǎng)問(wèn)跟路徑
String baseURL = scheme + "://" + serverName + ":" + port
+ contextPath;
request.setAttribute("baseURL", baseURL);
System.out.println("baseURL:" + baseURL);
%>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<%--設(shè)置IE渲染方式(文檔)默認(rèn)為最高(這部分可以選擇添加也可以不添加)--%>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Work Members</title>
<!--圖標(biāo)樣式-->
<link rel="stylesheet" type="text/css" href="${baseURL}/Bootstrap/bootstrap/css/bootstrap.min.css" rel="external nofollow" />
<link href="${baseURL}/Bootstrap/bootstrap-table/bootstrap-table.css" rel="external nofollow" rel="stylesheet" />
<link href="${baseURL}/Bootstrap/bootstrap-select/css/bootstrap-select.css" rel="external nofollow" rel="stylesheet" />
<link href="${baseURL}/Bootstrap/bootstrap-dialog/css/bootstrap-dialog.css" rel="external nofollow" rel="stylesheet" />
<!-- inline styles related to this page -->
<!-- ace settings handler -->
<script src="${baseURL}/Bootstrap/bootstrap/assets/js/jquery-2.0.3.min.js"></script>
<!--[if IE]>
<!--<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>-->
<script src="${baseURL}/Bootstrap/bootstrap/assets/js/jquery-1.10.2.min.js"></script>
<script src="${baseURL}/Bootstrap/bootstrap/assets/js/bootstrap.min.js"></script>
<script src="${baseURL}/Bootstrap/bootstrap-table/bootstrap-table.js"></script>
<style type="text/css">
table,table tr th, table tr td {
border:1px solid #fac090;
}
/*解決設(shè)置表頭列寬無(wú)效*/
#table{
table-layout: fixed;
}
</style>
</head>
<body >
<div style="">
<table id="table_showMembers"></table>
</div>
</body>
<script type="text/javascript">
$(function () {
var table_showMembers = $('#table_showMembers').bootstrapTable({
url: '${baseURL}/listProjectWorkItemAssignmentByProjAndWorkItemId?projId=151&workItemId=1',
method: 'get',//請(qǐng)求方式(*)
toolbar: '#toolbar',//工具按鈕用哪個(gè)容器
striped: true,//是否顯示行間隔色
cache: false,//是否使用緩存,默認(rèn)為true,所以一般情況下需要設(shè)置一下這個(gè)屬性(*)
pagination: false,//是否顯示分頁(yè)(*)
sortable: false,//是否啟用排序
sortOrder: "asc",//排序方式
queryParams: function (params) {//自定義參數(shù),這里的參數(shù)是傳給后臺(tái)的,我這是是分頁(yè)用的
return {//這里的params是table提供的
startIndex: params.offset,//從數(shù)據(jù)庫(kù)第幾條記錄開(kāi)始
pageSize: params.limit//每頁(yè)記錄數(shù)
};
},//傳遞參數(shù)(*)
sidePagination: "server",//分頁(yè)方式:client客戶(hù)端分頁(yè),server服務(wù)端分頁(yè)(*)
pageNumber: 1,//初始化加載第一頁(yè),默認(rèn)第一頁(yè)
pageSize: 1,//每頁(yè)的記錄行數(shù)(*)
pageList: [2, 4, 6, 8],//可供選擇的每頁(yè)的行數(shù)(*)
// search: true,//是否顯示表格搜索,此搜索是客戶(hù)端搜索,不會(huì)進(jìn)服務(wù)端
contentType: "application/x-www-form-urlencoded",
strictSearch: true,
//showColumns: true,//是否顯示內(nèi)容列下拉框
//showRefresh: true,//是否顯示刷新按鈕
minimumCountColumns: 2,//最少允許的列數(shù)
clickToSelect: true,//是否啟用點(diǎn)擊選中行
//height: 700,//行高,如果沒(méi)有設(shè)置height屬性,表格自動(dòng)根據(jù)記錄條數(shù)覺(jué)得表格高度
width:'50%',
uniqueId: "hrPerCode",//每一行的唯一標(biāo)識(shí),一般為主鍵列
//showToggle: true,//是否顯示詳細(xì)視圖和列表視圖的切換按鈕
cardView: false,//是否顯示詳細(xì)視圖
detailView: false,//是否顯示父子表
checkboxHeader :true, //隱藏表頭的checkbox
singleSelect: false, //開(kāi)啟單選
showFooter:true, //開(kāi)啟底部
columns: [
{
field: 'perCode',
title: '工號(hào)',
valign:'middle',
align:'center',
visible:true, //隱藏列
width:'100px',
footerFormatter: function(value){
return "Total Work item hours ";
}
},
{
field: 'perName',
title: '姓名',
align:'center',
width:'150px',
},
{
field: 'hasWorkedHours',
title: 'Invested hours',
align:'center',
width:'80px',
formatter: function(value,row,index){
return row.hasWorkedHours+"H";
},
//計(jì)算此列的值
footerFormatter: function(rows){
var sum = 0;
for (var i=0;i<rows.length;i++) {
sum += rows[i].hasWorkedHours
}
return sum+"H";
}
},
],
onPostBody:function () {
//合并頁(yè)腳
merge_footer();
}
});
});
//合并頁(yè)腳
function merge_footer() {
//獲取table表中footer 并獲取到這一行的所有列
var footer_tbody = $('.fixed-table-footer table tbody');
var footer_tr = footer_tbody.find('>tr');
var footer_td = footer_tr.find('>td');
var footer_td_1 = footer_td.eq(0);
//由于我們這里做統(tǒng)計(jì)只需要兩列,故可以將除第一列與最后一列的列全部隱藏,然后再設(shè)置第一列跨列
//遍歷隱藏中間的列 下標(biāo)從1開(kāi)始
for(var i=1;i<footer_td.length-1;i++) {
footer_td.eq(i).hide();
}
//設(shè)置跨列
footer_td_1.attr('colspan', footer_td.length-1).show();
//這里可以根據(jù)自己的表格來(lái)設(shè)置列的寬度 使對(duì)齊
footer_td_1.attr('width', "910px").show();
}
</script>
</html>
總結(jié)
以上所述是小編給大家介紹的Bootstrap-table使用footerFormatter做統(tǒng)計(jì)列的實(shí)例代碼 ,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
- bootstrap-table組合表頭的實(shí)現(xiàn)方法
- bootstrap-table實(shí)現(xiàn)表頭固定以及列固定的方法示例
- bootstrap-table實(shí)現(xiàn)服務(wù)器分頁(yè)的示例 (spring 后臺(tái))
- bootstrap-table+treegrid實(shí)現(xiàn)樹(shù)形表格
- bootstrap-table.js擴(kuò)展分頁(yè)工具欄(增加跳轉(zhuǎn)到xx頁(yè))功能
- bootstrap-table formatter 使用vue組件的方法
- Bootstrap-table自定義可編輯每頁(yè)顯示記錄數(shù)
- Node.js中Bootstrap-table的兩種分頁(yè)的實(shí)現(xiàn)方法
- Bootstrap table學(xué)習(xí)筆記(2) 前后端分頁(yè)模糊查詢(xún)
- bootstrap table 服務(wù)器端分頁(yè)例子分享
- Bootstrap table分頁(yè)問(wèn)題匯總
- bootstrap-table后端分頁(yè)功能完整實(shí)例
相關(guān)文章
JS實(shí)現(xiàn)手機(jī)號(hào)脫敏的方法詳解
脫敏指的是通過(guò)特定的技術(shù)手段對(duì)敏感數(shù)據(jù)進(jìn)行處理,使其不再直接暴露給用戶(hù)或系統(tǒng),防止敏感信息泄露,通常在測(cè)試、開(kāi)發(fā)、數(shù)據(jù)處理等場(chǎng)景中使用,本文給大家介紹了JS實(shí)現(xiàn)手機(jī)號(hào)脫敏的方法,需要的朋友可以參考下2025-03-03
代碼規(guī)范需要防微杜漸code?review6個(gè)小錯(cuò)誤糾正
這篇文章主要為大家介紹了代碼規(guī)范需要防微杜漸code?review中的6個(gè)小錯(cuò)誤糾正,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06
javascript 類(lèi)方法定義還是有點(diǎn)區(qū)別
這兩個(gè)定義都可以,不過(guò)后者對(duì)FF貌似好一些,前者在FF下可能出現(xiàn)missing before formal parameters錯(cuò)誤,導(dǎo)致js無(wú)法執(zhí)行。2009-04-04
限制文本框只能輸入數(shù)字||只能是數(shù)字和小數(shù)點(diǎn)||只能是整數(shù)和浮點(diǎn)數(shù)
這篇文章主要介紹了限制文本框只能輸入數(shù)字||只能是數(shù)字和小數(shù)點(diǎn)||只能是整數(shù)和浮點(diǎn)數(shù)的實(shí)例代碼,非常不錯(cuò),也比較實(shí)用,需要的小伙伴一起看下吧2016-05-05

