在 ExtJS 中,如何更改操作列的背景颜色?

In ExtJS, how do you change the background color of an actioncolumn?

我有一个使用 Ext.grid.ColumnModel 的 ExtJS Web 应用程序。对于其中一列,我需要设置背景色 based

var result = new Ext.grid.ColumnModel(
            [
                {
                    xtype: 'actioncolumn',
                    header: 'Delete',
                    align: 'center',
                    width: 50,
                    border: false,
                    items: [{
                        getClass: function (v, meta, record) {
                            if ((record.get('materialType') == '95'){

                                this.items[0].tooltip = "Delete all three";
                                this.items[0].tdCls = 'background-color: #F1F1F1;';

                            }
                            else {
                                this.items[0].tooltip = "Delete just one";
                                this.items[0].tdCls = 'background-color: #FFFFFF;';
                            }


                        }

               }

设置工具提示效果很好;设置背景颜色没有运气。有什么建议吗?

提前致谢, 蒂姆

我认为您需要在该 getClass 函数中使用元参数

meta.attr = 'background-color: #F1F1F1;'

http://docs.sencha.com/extjs/4.2.3/#!/api/Ext.grid.column.Action

tdCls 属性被设计为 css class 的名称,而不是某些 css 指令。例如:

this.items[0].tdCls = 'myclass'

在你的 css 中:

.myClass { background-color: #FFFFFF;}

如果您不想使用 class,您可以使用 style 属性。

有关详细信息,请参阅 http://docs.sencha.com/extjs/4.2.1/#!/api/Ext.grid.column.Column-cfg-renderer