更改网格 extjs3 中的记录边框颜色

Changing records border color in a grid extjs3

本文关键字:记录 边框 颜色 网格 extjs3      更新时间:2023-09-26

我有一个网格,用于显示数据库中表中的记录。在此表中,我有一个名为"STATUS"的字段,其值为"ON"或"OFF"。我正在尝试做的是,如果值为 ON 值,则在网格中为记录提供边框颜色绿色,如果值为 OFF,则为红色边框颜色。我尝试了所有方法,例如getRowClass方法,同时更改extjs-all中的CSS.css。 但是我没有成功。我真的很感激一些帮助。

 grid = new Ext.grid.GridPanel({
                        id:'users_gridpanel',
                        region:'center',
                        loadMask: {msg:"${tr.Loading}..."},
                        store: gridStore,
                        tbar:tlb,
                        cm: colModel,
                        stripeRows: true,
                        sm: _selctionModel,
                        plugins: [filters],
                        bbar:paging,
                        viewConfig:
                        {
                            forceFit: true,
                            headersDisabled:false
                        },

                    });

您有一个用于网格的列模型,在列模型状态列中添加渲染器方法,并在html的div标签中添加值

renderer:function(val,b,c,d,e,f){
           if(val==ON){
              return "<div add color property here for div >"+val+"</div>"
             }else{
              return "<div add color property here for div >"+val+"</div>"
             }
        }

也许不希望您完全需要,但是我已经在列中使用渲染器函数做了类似的事情,也许您也可以使用它?

这是我的代码:

 columns: [
   {header: "Color", dataIndex: "COLOR", width:100,
     renderer: 
       function(value, metaData, record, rowIndex, colIndex, store){
           if(value =='ON')
                metaData.style = "background-color: rgb(255,255,255);";
           else
                metaData.style = "background-color: rgb(0,0,0);"
         return "";
       }                                        
  },

您可以尝试使用border-color而不是background-color

希望这有帮助