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

我正在使用 Angular 和 Ag Grid。

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

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

【问题讨论】:

    标签: ag-grid ag-grid-angular


    【解决方案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

    【讨论】:

    • 非常感谢,这正是我所需要的!
    • 太棒了!很高兴它成功了。请接受答案。谢谢!
    猜你喜欢
    • 2019-10-26
    • 1970-01-01
    • 1970-01-01
    • 2020-03-09
    • 1970-01-01
    • 1970-01-01
    • 2020-07-09
    • 1970-01-01
    • 2021-04-08
    相关资源
    最近更新 更多