Dojo 如何向dijit.Tree添加新节点

Dojo 如何向dijit.Tree添加新节点,dojo,tree,insertion,Dojo,Tree,Insertion,我想向dijit.ree添加一个新节点,作为当前选定节点的同级节点。我发现了使用ItemFileWriteStore的newItem方法向树中添加新项的示例代码(我是dojo新手),但新项始终显示在树的底部。我将如何在指定的位置(特别是与当前选择相对应的位置)添加到存储中?欢迎指向示例代码的指针:) 谢谢, Larry您需要找到当前选定节点的父项,并将该项用作新创建项的父项 store.newItem(itemObj, {parent : parentItem, attribute : chil

我想向dijit.ree添加一个新节点,作为当前选定节点的同级节点。我发现了使用ItemFileWriteStore的newItem方法向树中添加新项的示例代码(我是dojo新手),但新项始终显示在树的底部。我将如何在指定的位置(特别是与当前选择相对应的位置)添加到存储中?欢迎指向示例代码的指针:)

谢谢,
Larry

您需要找到当前选定节点的父项,并将该项用作新创建项的父项

store.newItem(itemObj, {parent : parentItem, attribute : children});

通常,存储中的项没有指向其父项的反向指针。因此,您可能需要自己维护它。例如,您可以将父项的id存储在子项中,并使用
fetchItemByIdentity
获取父项。

您需要找到当前选定节点的父项,并将该项用作新创建项的父项

store.newItem(itemObj, {parent : parentItem, attribute : children});

通常,存储中的项没有指向其父项的反向指针。因此,您可能需要自己维护它。例如,您可以将父项的id存储在子项中,并使用
fetchItemByIdentity
来获取父项。

我找到了它;以下是未来搜索者的答案。按照Alex的建议使用newItem。然后使用model.pasteItem重新定位新项目。pasteItem接受父项(selectedNode.item.parent[0])和位置(selectedNode.getIndexInParent()+1)


拉里

我想出来了;以下是未来搜索者的答案。按照Alex的建议使用newItem。然后使用model.pasteItem重新定位新项目。pasteItem接受父项(selectedNode.item.parent[0])和位置(selectedNode.getIndexInParent()+1)


Larry

store.newItem出现错误(未捕获错误:dojo.data.ItemFileReadStore:属性参数无效)。到目前为止,无法真正找到解决此问题的方法,并且我的商店没有重复的id

因此,我尝试使用model.newItem(newItem,parentItem)。 这个很好用

谢谢,
Srilatha.

store.newItem给出错误(未捕获错误:dojo.data.ItemFileReadStore:无效的属性参数)。到目前为止,无法真正找到解决此问题的方法,并且我的商店没有重复的id

因此,我尝试使用model.newItem(newItem,parentItem)。 这个很好用

谢谢, Srilatha.

可能的重复