首先:我使用ExtJS的4.2.1ExtJS的4 - 從商店的複製記錄treestore(電網的TreeGrid)
我有兩個網格:第一個從數據庫中收集記錄(國家)和第二個是treegrid(應該顯示國家和每個國家應該擴大城市名單)。
我試圖實現的行爲是,一旦你在第一個網格上選擇一個記錄(或多個記錄),這些記錄被複制到treegrid作爲葉子,然後我可以填充這些葉子更多的記錄(城市)。
我從第一格中的記錄有:
grid.getSelectionModel().getSelection()
但我不知道如何複製它們的TreeGrid。我試過使用setRootNode,我可以看到根節點的「raw」屬性上的記錄,但我無法在網格上顯示它們。
我錯過了什麼?
更新:我已經設法獲得國家:
var records = grid.getSelectionModel().getSelection();
treegrid.getStore().setRootNode({ root: true, expanded: true, children: records})
現在我有問題加載子記錄。作爲一項測試,我嘗試使用相同的「國家記錄」來確保與模型沒有衝突。這是我已經試過:
var records = grid.getSelectionModel().getSelection();
for (record in records){
records[record].expanded = true;
records[record].children = records;
}
treegrid.getStore().setRootNode({ root: true, expanded: true, children: records})
這應該顯示的國家名單和擴大的一個記錄時,應再次顯示列表,選定記錄的兒童。它不工作:(
你解決了嗎? – Reimius
是的,但解決方案太重了,所以我決定把所有東西都放在後端,然後把所有東西都發回來。 – nahl