如何比较 Ag Grid 中同一行中的两个数据?

Posted

技术标签:

【中文标题】如何比较 Ag Grid 中同一行中的两个数据?【英文标题】:How to compare two data in the same row in Ag Grid? 【发布时间】:2022-01-05 17:11:54 【问题描述】:

我正在使用 Angular 和 Ag Grid。

我在 Ag Grid 表中有一个 contract_start 列和一个 contract_end 列(日期类型)。 我希望contract_end单元格的值只有在contract_end单元格的日期大于contract_start单元格的日期(在同一行)时才能更改。

我已经搜索了解决方案,但不幸的是,我只找到了有关按日期过滤的信息。

【问题讨论】:

【参考方案1】:

在您的contract_end 列定义中,您可以指定一个“可编辑”属性,它可以是布尔值或返回布尔值的函数。

您将使用函数版本。 该函数的参数是一个 EditableCallbackParams 对象,记录在 https://www.ag-grid.com/javascript-data-grid/column-properties/#reference-editing

在函数中,您可以访问行数据,并比较两个列的值。

例如:

editable: function(params: EditableCallbackParams): boolean 
   return params.data.contract_end.getTime() > params.data.contract_start.getTime();
   

请注意,我是从记忆中输入的 - 我没有尝试编译它 - YMMV

【讨论】:

非常感谢,这正是我所需要的! 太棒了!很高兴它成功了。请接受答案。谢谢!

以上是关于如何比较 Ag Grid 中同一行中的两个数据?的主要内容,如果未能解决你的问题,请参考以下文章

AG-Grid:如何根据同一行中其他单元格中的值更改单元格的颜色

如何为每一行添加单独的滚动,我想在 ag-grid-react 的嵌套级别排序

使用 ag-Grid 为每一行添加唯一的 id

通过按钮选择 ag-grid-table 中的下一行(如果下一行在下一页上)?

AG-GRID 无法将图标按钮添加到我的 ag-grid 中的 ag-grid 和多选复选框的每一行

隐藏 Ag-Grid 中的特定行值 - Angular