jqGrid,单击列标题时在列单元格上设置bg颜色

时间:2010-11-01 13:52:33

标签: jquery jqgrid

我正在使用jgGrid 3.8。我有一个问题。单击列标题时,我想为单元格的背景着色。我的意思是,升序或降序数据bg颜色必须是其他列的单元格的不同颜色。我怎样才能做到这一点?

非常感谢。

1 个答案:

答案 0 :(得分:4)

您可以在setCell事件句柄中使用loadComplete方法。在加载排序数据之后和数据分页之后将调用事件loadComplete,因此它是根据当前排序顺序更改单元格背景颜色的好地方:

loadComplete: function() {
    var ids = grid.jqGrid('getDataIDs');
    if (ids) {
        var sortName = grid.jqGrid('getGridParam','sortname');
        var sortOrder = grid.jqGrid('getGridParam','sortorder');
        for (var i=0;i<ids.length;i++) {
            grid.jqGrid('setCell', ids[i], sortName, '', '',
                        {style:(sortOrder==='asc'?'background:aqua;':
                                                  'background:yellow;')});
        }
    }
}

执行此操作的工作示例您可以看到实时here

更新:同时查看modified demo。结果看起来比上一个演示看起来更漂亮:

alt text

它显示除Opera之外的所有浏览器的渐变效果。在Opera中,它与之前的演示相同。在另一个answer我用颜色渐变效果玩得更多。

相关问题