2010-05-03 204 views
1

我想添加一個新節點到dijit.ree作爲當前選定節點的同級。我找到了示例代碼(我是dojo的新手),它使用ItemFileWriteStore的newItem方法將新項添加到樹中,但新項總是出現在樹的底部。我如何在指定位置添加商店,特別是與當前選擇對應的位置?指針到示例代碼將受到歡迎:)如何將新節點添加到dijit.Tree

感謝, 拉里

回答

2

你需要找到當前選中的節點的父項,並使用該項目作爲新建項目的父。

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

通常情況下,商店中的物品沒有指向其父級的後向指針。所以你可能需要自己維護一下。例如,您可以將父項目的ID存儲在子項目中,並使用fetchItemByIdentity獲取父項目。

2

我明白了;這是未來的搜索者的答案。像Alex建議的那樣使用newItem。然後使用model.pasteItem重新定位新項目。 pasteItem需要父(selectedNode.item.parent [0])和位置(selectedNode.getIndexInParent()+ 1)

拉里

2

store.newItem是給一個錯誤(未捕獲的錯誤:dojo.data。 ItemFileReadStore:無效的屬性參數。)。到目前爲止,還沒有真正找到解決辦法,我的商店沒有重複的ID。

因此,我嘗試使用model.newItem(newItem,parentItem)。 這工作完全正常。

謝謝, Srilatha。

相關問題