Kendo TreeList与ASPNET Mvc上的复选框

时间:2018-06-26 12:20:33

标签: asp.net-mvc checkbox kendo-ui treelist

我在ASPNET Mvc应用程序中使用Kendo(并且以前几乎从未使用过),并且需要创建带有复选框的TreeList:检查父亲应该检查所有孩子,取消检查孩子应该取消检查父亲(和祖父等等)。 树本身运行良好:我添加了带有自定义模板的列,并且正在(成功地)使用onClick事件来获取复选框的值,但是我不知道如何将该值“绑定”到树的节点(可以到达每个孩子并对其进行检查)。

代码在这里:

@(Html.Kendo().TreeList<TreeElem>()
  .Name("treelist")
  .Columns(col =>{                                                                
     col.Add().Field(f => f.NodeDescription).Title("TREE LIST");
     col.Add().Template("<input type='checkbox' data-bind='checked: checked' onClick='onCheck(event)'/>").Width(55);
   })
   .DataSource(source => source.Read(read => read.Action("GetData", "TreeController"))
   .Model(m => {                                                                                                
             m.Id(f => f.NodeId); 
             m.ParentId(f => f.ParentId);
             m.Field(f => f.NodeDescription);
       })
    )
)

在javascript中:

function onCheck(e) {
  console.log(e.target.checked); //print true/false according to the checkbox
  console.log($("#treelist").data('kendoTreeList').dataSource.data()); //print the complete node list 
  //Other stuffs
}

我想根据选中的复选框从data()(或view())获取正确的节点。每个节点都引用了他的孩子和父亲,因此此后的递归函数应该很容易。 我已经寻找并尝试了许多解决方案,但几乎没有结果,有任何想法吗? 谢谢

0 个答案:

没有答案