【问题标题】:How to disable few columns of a row based on a condition in Webix datatable如何根据 Webix 数据表中的条件禁用一行的几列
【发布时间】:2017-11-26 03:27:29
【问题描述】:

我有一个 webix 数据表,其列名称为“No.”、“Name”、“Action”、“Phone”、“Comments”。以下是列的类型:

  1. '编号'和“名称”列始终是只读的。
  2. 其余三个“操作”、“电话”和“评论”是可编辑的,而且“操作”和“电话”列下的单元格有下拉菜单。

要求: 可以说,对于“名称”字段中的特定值(例如“标记”),我想禁用该特定行的所有可编辑字段。该行应呈现为禁用(只读)或在编辑可编辑字段之前将变为禁用(只读)。所有其他行应该有它们通常的行为。

我已经尝试通过https://webix.com/snippet/3bafd99c 的 onBeforeEditStart 事件来实现这一点

但是我在实施它时遇到了问题。任何帮助都会很棒。

谢谢。

【问题讨论】:

    标签: datatable webix


    【解决方案1】:

    你可以使用类似下一个的代码

    onBeforeEditStart:function(id){
         return this.getItem(id).id1 !== "Mark";
    }
    

    https://webix.com/snippet/306471fc

    getItem 调用返回当前行,下一次检查将 name 列的值与控制列的值进行比较。 (在列的配置中使用 id:"name" 将使上述行更具可读性)

    【讨论】:

    • 首先谢谢。我问了 name == Mark 的特性只是为了用更简单的词来问这个要求。如果我想在 checkAccess 函数中检查很多东西并返回 true 或 false & 然后基于该返回我想禁用单元格,这可能吗?我的意思是我在 sn-ps 中的做法。
    猜你喜欢
    • 2018-03-18
    • 1970-01-01
    • 2018-10-27
    • 1970-01-01
    • 1970-01-01
    • 2013-06-02
    • 1970-01-01
    • 2013-05-07
    • 1970-01-01
    相关资源
    最近更新 更多