1

我正在实现 JQGrid 并将数据类型作为 JSON 发送。另外,我设置loadoncetrue,并且能够在页脚中正确获取页脚摘要。

但是,在页面导航中,总值会根据每个页面中的行数据而变化。我的要求是显示特定列的所有记录的总计,以便页脚值在页面更改时保持不变。

我正在使用以下代码来获取页脚摘要:

var grid=$("#mygrid");
sum = grid.jqGrid('getCol','amount',false,'sum');
grid.jqGrid('footerData','set',{ID:'Total:',amount:sum});
4

1 回答 1

0

您可以使用userDataOnFooter选项来实现您的目标。首先,true在初始化时将此选项设置为:

$("#mygrid").jqGrid({
    ...
    footerrow : true,
    userDataOnFooter : true,
});

之后,您可以在响应中发送页脚行的值,JSON 应该如下所示:

{
    total: x,
    page: y,
    records: z,
    rows : [
        { id: "1", cell: ["value11", "value12", "value13"] },
        { id: "2", cell: ["value21", "value22", "value23"] },
        ...
    ],
    userdata: { ID: "Total:", amount: <sum counted on server side> }
}

jqGrid Demos页面上也有现场示例,您应该选择“New in Version 3.5”,然后选择“Summary Footer Row”。

于 2012-08-30T07:27:47.600 回答