我想将新节点添加到dijit.ree作为当前所选节点的兄弟节点。我找到了示例代码(我是dojo的新手),它使用ItemFileWriteStore的newItem方法向树添加一个新项,但新项总是出现在树的底部。如何在指定位置添加到商店,特别是与当前选择对应的位置?欢迎使用示例代码示例:)
谢谢, 拉里
答案 0 :(得分:2)
您需要找到当前所选节点的父项,并将该项用作新创建项的父项。
store.newItem(itemObj, {parent : parentItem, attribute : children});
通常,商店中的商品没有指向其父级的后退指针。所以你可能需要自己维护。例如,您可以将父项的id存储在子项中,并使用fetchItemByIdentity
来获取父项。
答案 1 :(得分:2)
我明白了;这是未来搜索者的答案。使用newItem作为Alex建议。然后使用model.pasteItem重新定位新项。 pasteItem接受父(selectedNode.item.parent [0])和位置(selectedNode.getIndexInParent()+ 1)
拉里
答案 2 :(得分:2)
store.newItem发出错误(未捕获错误:dojo.data.ItemFileReadStore:无效的属性参数。)。到目前为止无法真正找到解决方法,我的商店没有重复的ID。
因此我尝试使用 model.newItem(newItem,parentItem)。 这非常正常。
谢谢, Srilatha。