通过比较覆盖Grouping Store支持的ExtJS网格中的单个列

时间:2011-02-28 19:47:20

标签: javascript extjs

我有一个由分组存储支持的网格,其中我有一个使用自定义渲染器的列。

在该自定义渲染器中,我拆分列中的值并使用它在单元格中构建面板。

我想让组操作组只传递给我传递给单元格的值的一部分,即:

到这一列,我传递一个这样的字符串:

a|2|somestring
a|3|someotherstring
b|1|thirdstring

我希望将其分组为:

a|2|somestring
a|3|someotherstring

b|1|thirdstring

但默认网格行为是分组为:

a|2|somestring

a|3|someotherstring

b|1|thirdstring

因为它们都是独特的字符串。

要做到这一点,如果有一个我可以覆盖该单元格的函数,它会让我检索字符串以进行比较,这真是太棒了。

这可能吗?

2 个答案:

答案 0 :(得分:1)

如果没有您的代码,对于场景来说有点困难,但基本上您可以将要分组的数据带回来,并将其加载到您的商店中(只是不要在网格的列模型中显示)。 / p>

然后,您可以将其声明为商店配置中的groupField

在网格的GroupingView中,您可以显示连接的字符串。应该像... ...

网格配置:

//...
groupField: 'singleLetterField'
//...

分组视图配置:

//...
groupTextTpl: '{nameOfConcatenatedStringInStore}'
//...

如果这不符合你的情况,请告诉我你的代码,我会调整它

答案 1 :(得分:0)

Ext.grid.Column#groupRenderer是用于定义列分组内容的函数。我可以处理存储在列中的字符串,并返回我希望列分组的内容。

感谢Jaitsu让我找到了正确的位置。