我想在页脚中添加一个Total。我知道如何添加列的总和。但我的问题是如何在列包含分钟或小时时获得总和。这是当我有整数或浮点数时:
var workedTotal = jQuery("#list2").jqGrid('getCol', 'worked', false, 'sum');
$(this).jqGrid('footerData','set',
{name:'TOTAL', worked:workedTotal});
正如我之前提到的,当我有日期时间格式时,我想知道如何获得列的总和? THX
答案 0 :(得分:0)
getCol
仅适用于列中的数字。要使'sum'
正确使用"102:32"
等数据,您应该将unformat
函数(请参阅here)添加到列'worked'
。 unformat
函数可以将分钟和小时转换为分钟数并返回结果
unformat: function (cell) {
if (typeof cell !== "string") {
return 0;
}
// now we are sure that we work with strings and can use split
var arr = cell.split();
if (arr.length === 2) {
// standard format of input string like "102:32"
var h = parseInt(arr[0], 10), m = parseInt(arr[1], 10);
if (!isNaN(h) && !isNaN(m)) {
return h * 60 + m;
}
}
return 0; // some exotic input data
}
我没有测试上面的代码,但我希望您将unformat
添加到列'worked'
的定义中,然后
var workedTotalMin = jQuery("#list2").jqGrid('getCol', 'worked', false, 'sum');