JqxGrid:根据列的值更改行的颜色

prv*_*rvn 4 jquery row colors jqxgrid

我在这个论坛上提到了一些答案 http://www.jqwidgets.com/jquery-widgets-documentation/documentation/jqxgrid/jquery-grid-cellsrendering.htm http://www.jqwidgets.com/community/topic/change-行彩色的,GridView控件/

两者都是使用单元格的单元格事件完成的,并且可以应用于同一单元格.如何获取一个单元格的值来更改不同单元格的颜色?

或者有一种方法可以改变整行的背景颜色吗?下面是我用来改变相同单元格颜色的代码.

var cellsrenderer = function(row, column, value, defaultHtml) {
                var element = $(defaultHtml);
                element.css({ 'background-color': '#' + value });
                return element[0].outerHTML;
            return defaultHtml;

$("#jqxgrid").jqxGrid({
            width: 1100,
            autorowheight: true,
            autoheight: true,
            source: dataAdapter,
            theme: 'classic',
            columns: [
            { text: 'Job Number', dataField: 'jobNum' },
            { text: 'Project Name', dataField: 'ProjName' },
            { text: 'Hours', dataField: 'hrssum' },
            { text: 'Project Type', dataField: 'Suffix' },
            { text: 'color name', dataField: 'colorname', cellsrenderer: cellsrenderer }
            ]
        });
        }
Run Code Online (Sandbox Code Playgroud)

小智 7

在cellrenderer中还有2个参数由jQWidgets Grid传递.

var cellsrenderer = function(row,column,value,defaultHtml,columnSettings,rowData){

}

最后一个参数 - rowData是一个JSON对象,它包含渲染的行值.因此,如果您有一个datafield = firstname的列,您可以编写:

var firstName = rowData.firstname;