我创建了jqgrid dynmamic,但我有问题。当创建页脚jqgrid时 我想要使用summaryType的总colunme id。但是显示结果为空 这个演示enter link description here
这是我的代码
$grid.jqGrid({
data: data,
colModel: [
{ name: "act", template: "actions" },
{ name: "id", width: 50,
summaryTpl: "Sum: {0}",
summaryType: "sum",
},
答案 0 :(得分:1)
可以很容易地解释问题的原因。在数据分组期间使用属性summaryTpl: "Sum: {0}", summaryType: "sum"
,而不是在页脚行中放置一些数据。要填充页脚,您可以使用userDataOnFooter: true
选项和来指定userData
选项,也可以调用footerData
来明确设置页脚的内容。
演示https://jsfiddle.net/OlegKi/dnfk8hmr/139/首先计算总和
var i, sum = 0;
for (i = 0; i < data.length; i++) {
sum += parseInt(data[i].id, 10);
}
然后使用选项
footerrow: true,
userDataOnFooter: true,
userData: { id: sum }
创建页脚并在页脚行的id
列中设置计算的总和。
另一个演示https://jsfiddle.net/OlegKi/dnfk8hmr/138/使用footerData
getCol
和loadComplete
方法
footerrow: true, // the footer will be used for Grand Total
loadComplete: function () {
var $self = $(this);
$self.jqGrid("footerData", "set", {
id: parseFloat($self.jqGrid("getCol", "id", false, "sum"))
});
}
重要的是要注意,演示中使用的getCol
仅从当前页面访问数据 。您可以在演示https://jsfiddle.net/OlegKi/dnfk8hmr/140/上看到清楚,其中rowNum
更改为2。