如何为自动生成的列添加自定义摘要?

时间:2019-05-23 07:19:30

标签: iggrid

我正在使用iggrid和我的autoGenerateColumns:true,是true。每次都不会生成固定的列数。

我想使用自定义摘要来计算动态列各行的总和,并在底部显示。

1 个答案:

答案 0 :(得分:2)

您描述为自定义摘要的摘要是显示所有行的总和,这是igGrid支持的即开即用(如果已启用摘要),可以通过设置{{ 3}}和“摘要”选项中的column settings

如果您的列包含数字值,则启用“摘要”功能即可使用。

如果您想显示特定的摘要(在您的情况下为“ sum”),但是您不知道列键,则可以使用CSS选择器来隐藏其余的默认摘要,例如这个:

<style>
    tfoot[role='rowgroup'] tr:not([id$='_sum']) {
        display: none
    }
</style

如果启用了“摘要”功能,则上述CSS将隐藏除“摘要”之外的所有摘要行,我相信这是您想要做的。 请记住,这将隐藏其余的摘要操作数,有效地只将总和摘要保留为一行,但是它将显示所有数字列的摘要。 如果只想显示特定列的“汇总”摘要,请尝试使用以下方法获取初始化后的网格的列:

$("#grid").igGrid("option", "columns")

这将使您即使在初始化“摘要”功能后也可以设置列设置。如果您有一列带有“ UnitPrice”键的列,并且想要在初始化网格后禁用其摘要,则代码应如下所示:

$("#grid").igGridSummaries("option", "columnSettings", [{ columnKey: "UnitPrice", allowSummaries: false  }]);

我认为在对igGrid进行数据绑定之前转换API数据,以便将日期垂直显示在不同的行上,而不是将其可视化为列,这可能是一个更好的主意–这将使您可以更轻松地使用摘要并求和学生缺勤的天数。

请注意,为了使用摘要功能,应在网格要素配置中将其启用,例如:

features: [
    {
        name: 'Summaries'
    }
]