Dojo 默认情况下,加载时canEdit在dgrid中不工作

Dojo 默认情况下,加载时canEdit在dgrid中不工作,dojo,editor,dgrid,Dojo,Editor,Dgrid,我有一个树状网格,在编辑时有以下ui要求 某些行的“成本”列是可编辑的 默认情况下,可编辑行应始终可供编辑,而不是 基于任何事件 每行具有最小-最大范围。当用户输入一个值时 需要验证 下面是我为dgrid定义的列结构 var columns = [ tree({label: "Name", field:"name" }), { label : "Description", field:"description" }, editor({label

我有一个树状网格,在编辑时有以下ui要求

  • 某些行的“成本”列是可编辑的
  • 默认情况下,可编辑行应始终可供编辑,而不是 基于任何事件
  • 每行具有最小-最大范围。当用户输入一个值时 需要验证
下面是我为dgrid定义的列结构

var columns = [
        tree({label: "Name", field:"name" }),
        { label : "Description", field:"description" },
        editor({label: "Cost", field: "cost", canEdit : function(rowItem){ return rowItem.isEditable;}}, dijit.form.NumberTextBox),
        {label:"Min - Max Range", field:"minRange", get:getMinMax, id:'minMax'}
];
虽然树和编辑工作正常,但我有几个问题需要解决

  • 如果未为编辑器提供editOn,则该列可编辑 默认情况下。然而,canEdit只有在我们提供 editOn参数中的spl事件。有没有办法让canEdit被调用 即使在默认加载期间也是如此
  • 我需要为的NumberTextBox动态设置范围约束 每行。是否有一种基于行设置约束的简单方法 价值观
非常感谢您的帮助

  • 对于editOn为false时调用的canEdit检查:
  • 对于基于行值的动态设置值,您可以尝试:
    在小部件级别扩展小部件:
    在 继承后启动(参数)

    var\u row=this.grid.grid.row(this.domNode.parentNode)
    this.query={myParam:_row.data.maxRange} 泽马赫