Kendo UI删除Treeview中的节点属性

时间:2012-11-21 16:05:25

标签: attributes treeview kendo-ui dataitem

我有一些节点包含items值,似乎默认情况下是从剑道初始化的,每次都是值“[]”!

我想从节点中完全删除“items”字段,但我似乎找不到任何删除属性的方法。

我尝试通过dataItem访问节点,我尝试了dataItem.set("items",undefined),但我认为它仍然没有帮助。我正在尝试删除items字段,因为似乎是由kendo完成初始化的一个问题,我无法向它们添加新节点,我认为这是因为它...

编辑:

似乎kendo.observableHierarchy(data)初始化没有子节点的每个树节点(因此没有items属性)。并且通过初始化我的意思是每当我向dataSource显示没有子节点的节点时自动添加"items":[]属性!

我尝试通过treeview.dataItem(treeview.select()).append()添加节点,但我发现此方法不适用于通过kendo添加"items":[]属性的“旧”节点,因此“旧”节点是从页面加载到树上加载的所有节点都因此保存在JSON文件中。

我说“旧”,因为如果我追加一个新节点,它没有"items"字段,上面提到的.append()在添加节点和更新dataSource时工作得很好。 。.append()在已经有子节点的“旧”节点上工作得很好,因此剑道不会修改它们的"items"字段,因为它已经存在。

2 个答案:

答案 0 :(得分:1)

我刚刚发现了一些有趣的关于剑道的建议答案:http://www.telerik.com/forums/clear-all-nodes

使用他们的代码建议,也会删除.items属性:

$(".k-treeview").data("kendoTreeView").remove(".k-item");

答案 1 :(得分:0)

删除对象字段为delete XXX。我ve updated the [fiddle] (jsfiddle.net/OnaBai/UC3uW/1) by adding a third option called删除了`但除非我误解了你的建议,否则它无法解决问题。我担心这是KendoUI中的一个功能,它不像我们期望的那样管理HierarchicalDataSource。