首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于验证的Ag-Grid树状结构在NodeChildren单元上附加cellClass

基于验证的Ag-Grid树状结构在NodeChildren单元上附加cellClass
EN

Stack Overflow用户
提问于 2019-04-13 22:21:46
回答 2查看 482关注 0票数 0

在我的Jquery&JavaScript,Angular,所有独立的应用程序中,我都包含了带有columnDefs的Ag-Grid,如下所示:

代码语言:javascript
复制
 this.columnDefs = [
  {
    headerName: "Age",
    field: "age",
    cellRenderer: "agGroupCellRenderer"
  },
  {
    headerName: "Name",
    field: "name"
  },
  {
    headerName: "Year",
    field: "year"
  },
  {
    headerName: "Country",
    field: "country"
  }
];

我的行数据如下

代码语言:javascript
复制
 this.rowData = [
  {
    age: "Group A",
    participants: [
      {
        age: 1,
        name: "Michael Phelps",
        year: "2008",
        country: "United States"
      },
      {
        name: "A.2",
        age: 2,
        year: "2008",
        country: "United States"
      },
      {
        name: "A.3",
        age: 50,
        year: "2008",
        country: "United States"
      }
    ]}];

this.getNodeChildDetails = function getNodeChildDetails(rowItem) {
  if (rowItem.participants) {
    return {
      group: true,
      children: rowItem.participants,
    };
  } else {
    return null;
  }

现在我想将cellClass附加到基于验证的子网格值,例如:

代码语言:javascript
复制
 if(age< 23 || ''){
  return['classNameThatiWantToAttach'];
 }

如何做到这一点?

你也可以在下面的柱塞器中进行更改:

https://plnkr.co/edit/lmjtuqfId4FIsTI5luL8?p=preview

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-04-14 04:53:13

你可以这样做

编辑列定义并向其中添加cellClass函数

代码语言:javascript
复制
 {
    headerName: "Year",
    field: "year",
    editable: true,
    cellClass: this.cellClass
  }

然后定义函数并添加所需的条件,并返回一个包含类的值的字符串

代码语言:javascript
复制
  cellClass(params) {
    if (params.value >= 2015)
      return "redClass"
  }

不要忘记为这些类添加css样式。

Example

票数 1
EN

Stack Overflow用户

发布于 2019-04-14 05:07:28

请参阅更新后的plunkr,根据年龄验证,显示为红色的单元格:

https://plnkr.co/edit/QZd2MM1LflQaruxdCmym?p=preview

代码语言:javascript
复制
this.columnDefs = [
    // ...
    {
        headerName: "Age",
        field: "age",
        cellClassRules: this.getCssClass()
    }
    // ...
];

getCssClass(): {[cssClassName: string]: (Function | string)} {
    return {
        'invalid-age': this.validateAge(),
    };
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55666503

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档