首页 > 解决方案 > 如何在单元格值更改时更改后续单元格的背景颜色?

问题描述

我正在使用包含以下列的 agGrid:-

genderColDef = [
        {
            headerName: 'Gender Name', field: 'Name',            
            onCellValueChanged: this.genderCellValueChanged.bind(this),        
        },
        {
            headerName: 'Request Number', field: 'RequestNumber',          
            cellStyle: { 'background-color': null }                  
        },             
    ];

当我编辑名为“性别名称”的列时,它应该更改字段“请求编号”的背景颜色,以便用户了解它也是强制填写的。我在单元格值更改功能中添加了以下代码:-

 genderCellValueChanged(event: any) {        
        if (event.newValue != event.oldValue)
            this.genderColDef[1].cellStyle = { 'background-color': 'red'};         

        let refreshParams = {
            force: true,
            rowNodes: [event.node]
        };
        event.api.refreshCells(refreshParams); 
        console.log(this.genderColDef); 
    }

但是,这不会改变单元格的背景颜色。你能告诉我原因吗?

标签: angularag-grid

解决方案


onCellValueChanged应该在 gridOptions 对象上,而不是在列定义上。如果你把它移到那里,那么它应该可以工作。


推荐阅读