视觉上指示已在extjs网格中设置过滤器

时间:2014-06-11 13:52:54

标签: javascript extjs extjs4

有没有办法直观地表明在extjs(4.2)网格中设置了过滤器?

默认情况下,标题文本变为itallic。但我使用的是极端主题 - 灰色的外观和感觉,很难看到视觉指示。

我想在标题上设置一个图标,甚至使标题文本变暗。即使在工具栏中添加一些文字就足够了。

2 个答案:

答案 0 :(得分:1)

Ext.ux.grid.filter.Filter 被标记为有效时,'激活'启动事件,并在某个时刻调用 Ext.ux.grid.FiltersFeature.updateColumnHeadings()方法。

这是设置" ux-filtered-column"的方法。默认情况下,列标题上的css类( Ext.ux.grid.FiltersFeature.filterCls 的默认配置)。

您可以更改此FiltersFeature属性或覆盖该方法以执行其他操作。

答案 1 :(得分:1)

我想出了在列上设置过滤器时如何直观地更改列标题。

确保包含GridFilters.css。

例如:

<link rel="stylesheet" type="text/css" href="js/lib/ext-4.2.1.883/ux/grid/css/GridFilters.css" />

然后在CSS文件中,您可以更改样式值。默认情况下,您会看到:

.ux-filtered-column {
    font-style: italic;
    font-weight: bold;
    background: #56b8ff;
}

您可以更改颜色,甚至可以添加图标。

这解决了我的问题。