我正在使用帶有IE9瀏覽器的Dojo 1.7。我試圖動態生成多個DataGrid並將它們追加到div內的內容。我正在使用網格的autoHeight
屬性。Dojo DataGrid autoHeight不能在IE9中工作
這在Chrome或Firefox中運行良好。但是,直到我將高度設置爲固定值之後,網格纔會顯示在IE上。
如何讓autoHeight在IE中工作?我懷疑它與IE9如何處理高度語義有關。
我正在使用帶有IE9瀏覽器的Dojo 1.7。我試圖動態生成多個DataGrid並將它們追加到div內的內容。我正在使用網格的autoHeight
屬性。Dojo DataGrid autoHeight不能在IE9中工作
這在Chrome或Firefox中運行良好。但是,直到我將高度設置爲固定值之後,網格纔會顯示在IE上。
如何讓autoHeight在IE中工作?我懷疑它與IE9如何處理高度語義有關。
在IE上,我必須確保我在動態添加的網格上調用啓動。例如如果您在postCreate中添加網格,請嘗試以下操作:
startup: function() {
this.inherited(arguments);
if (this.grid) this.grid.startup();
}
網格可能很挑剔。即使這樣做,我仍然在使用autoHeight的IE(IE9)上遇到高度問題。如果我在事後設置了更新後的商店,則高度將變爲0.
直到幾分鐘前,我一直在處理相同的問題:我正在創建動態網格,具體取決於列表中有多少項並且每個網格都使用autoHeight顯示。問題與網格或其高度無關。
我不確定,但IE以不同的方式解釋圖層,所以你必須以具體的方式添加它們。嘗試將網格首先添加到您的DOM節點(我的意思是您也將動態創建的節點,您將在其上添加網格),然後將此網格容器的最後一個位置添加到HTML中。它對我來說工作正常。
我也面臨同樣的問題。我試圖找到替代品。
我遵循這種方式和它的工作。
添加以下屬性
dojox.grid.datagrid
onShow: function(){if(grid)grid.setStore(store);}
並調用grid.onShow();
var grid= new dojox.grid.DataGrid({
store : store,
query : {
sno : "*"
},
autoHeight:true,
structure : columns,
selectionMode : "Multiple",
onShow: function(){if(grid)grid.setStore(store);}
});
// This will fire the onShow event on grid.
grid.onShow();