如何计算列的总和并在Asp.net的Jqgrid中显示在FooterRow上

时间:2013-01-23 14:11:01

标签: asp.net jqgrid

Hii伙计!!                我在jqgrid中显示数据并在jqgrid中启用'footerrow:true'现在根据我的需要,我想在页脚行显示特定列的总和... Plz伙伴帮我,因为我第一次使用Jqgrid ... < / p>

提前致谢....

1 个答案:

答案 0 :(得分:14)

如果要对jqGrid中的值求和,可以在JavaScript中执行此操作(最好在gridComplete事件中):

$('#gridId').jqGrid({
    ...
    footerrow: true,
    gridComplete: function() {
        var $grid = $('#gridId');
        var colSum = $grid.jqGrid('getCol', '<Your column name>', false, 'sum');
        $grid.jqGrid('footerData', 'set', { 'Your column name>: colSum });
    }
});

如果您需要在服务器端计算总和,则必须先启用userDataOnFooter选项:

$('#gridId').jqGrid({
    ...
    footerrow : true,
    userDataOnFooter : true
});

然后在服务器响应中包含总和。例如,在JSON的情况下,它应该如下所示:

{
    total: x,
    page: y,
    records: z,
    rows : [
        ...
    ],
    userdata: { <Your column name>: <sum counted on server side> }
}

您还可以查看jqGrid Demos页面上提供的实时示例(您应该选择&#34;版本3.5和#34中的新功能;然后&#34;摘要页脚行&#34;)。