如何在页脚jqgrid中使用总colunme

时间:2018-01-09 12:50:21

标签: jquery jqgrid

我创建了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",


            },

1 个答案:

答案 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

内的getColloadComplete方法
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。