我有一个以下的EnhancedGrid:
var newGrid = new EnhancedGrid({
store : this.resultStore,
structure : this.resultGridLayout,
autoHeight:true
});
newGrid.placeAt(this.resultGridNode);
newGrid.startup();
我已将网格放在“dijit.layout.TabContainer”下,默认情况下未选中此标签。
第一次加载页面时表格没有出现......
或者更确切地说,我会说一个表格像一条线......当我使用firebug检查时,发现数据存在但是dojoxGridMasterHeader和其他网格相关的css类的高度和宽度都是零...
下次当我在某个输入参数中进行更改以更改网格中的值时,该表将显示..
尝试了以下主题中提供的解决方案,这对我来说无效:EnhancedGrid in a TabContainer not working
答案 0 :(得分:0)
您是否尝试启动小部件?
newGrid.startup();
然后将其放入DOM。
newGrid.placeAt(this.resultGridNode);
答案 1 :(得分:0)
我在使用dijit.layout.TabContainer和Gridx时遇到了类似的问题。您应该在第一次出现时调用选项卡的resize()方法。您也可以选择在tabSwitch监听器上调用resize()。
代码应该类似于:
tabContainer.selectedChildWidget.resize()
但这实际上取决于你如何使用容器。