【问题标题】:How to calculate the Sum of Column and show On FooterRow In Jqgrid in Asp.net如何在 Asp.net 的 Jqgrid 中计算列的总和并显示在 FooterRow 上
【发布时间】:2013-01-23 14:11:01
【问题描述】:

大家好!! 我在jqgrid中显示数据并在jqgrid中启用'footerrow:true'现在根据我的需要,我想在页脚行上显示特定列的总和......请帮助我,因为我第一次使用Jqgrid......

提前谢谢....

【问题讨论】:

  • 查看here 以获得答案,查看here 以获得关于我之前回答的同一主题的更多示例。

标签: asp.net jqgrid


【解决方案1】:

如果您想对 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 页面上提供的实时示例(您应该选择“3.5 版中的新功能”,然后选择“摘要页脚行”)。

【讨论】:

  • 这是我添加的代码,但它不起作用 Sir rowNum: 10, rowList: [10, 20, 30], pager: '#UsersGridPager', sortname: 'UserID', viewrecords: true , sortorder: 'asc', autowidth: true, toppager: true, footerrow: true, gridComplete: function() { var $grid = $('#UsersGrid'); var colSum = $grid.jqGrid('getCol', '', false, 'sum'); $grid.jqGrid('footerData', 'set', { 'Balance>: colSum' }); }
  • @vikas 我相信我让你对''括号感到困惑,你的代码应该更像这样: gridComplete: function() { var $grid = $('#UsersGrid '); var colSum = $grid.jqGrid('getCol', 'Balance', false, 'sum'); $grid.jqGrid('footerData', 'set', { Balance: colSum }); }
  • 我如何在总记录上使用点击功能?
猜你喜欢
  • 2013-05-26
  • 1970-01-01
  • 2013-03-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-08-30
相关资源
最近更新 更多