2012-12-12 259 views
0

我正在刷新dojox.grid.EnhancedGrid,使用dojo.data.ItemFileWriteStore每秒。我有一個dijit.layout.TabContainer,其中EnhancedGrid存在於其中一個選項卡中。當我切換選項卡並返回到網格選項卡時,整個grid消失。柵格刷新時,Dojo柵格隱藏

什麼是解決方案?

var store = new dojo.data.ItemFileWriteStore({ 
    url: '', 
    data: result, 
    urlPreventCache: false 
}); 
grid.setStore(store); 
+0

請出示更多的代碼,特別是部分,在這裏你'刷新'商店或網格或其他。更好的將是一個小提琴重現問題 – nozzleman

回答

1

我不知道如何使用EnhancedGrid但我有當我用DataGrid創建一個動態和不斷變化的矩陣同樣的錯誤,這是我怎麼能解決這個問題。

你的問題的產生是因爲:

  1. 在網格不支持新的存儲(不同的字段名等),你的舊結構性能。如果你沒有正確的結構,Dojo會抱怨,你看不到網格。

  2. 我很確定這是一個。 grid.setStore(newStore)第二次不起作用可能是因爲grid適應了商店的第一個聲明。我曾嘗試過grid.setStore()grid.setStructure()方法,並且在第一次「刷新」後沒有顯示出來。

我的解決辦法:

清空你有dojo.empty()容器和每一個你與你的新店刷新一次創建該容器中一個新的網格

+0

謝謝丹尼爾。刪除並重新創建整個網格將不是一個可行的解決方案。還有其他的方式嗎? – harris