一个常见问题的解决——Ext grid的宽度高度如何自适应

Ext的Grid有个问题,当初始化grid将宽度设为100%时,其宽度会变成10000px宽,高度100%则grid会根据内容自适应,而不是根据其所在容器自适应,一直没有很好的办法。

现在有个比较笨的方法。一般我们都通过render到指定id的层上来展现grid,虽然不能让grid宽高自适应,但层还是可以的。

比如层是<div id="myGrid"></div>。我们可以设置高宽。

<div id="myGrid" style="width:100%;height:450px"></div>。

在初始化grid的时候让其宽高与div层宽高相同即可,并在页面resize时重新计算器宽度即可(一般高度固定还是比较好)。

 

看代码:

    var myGrid=Ext.get("myGrid");  
     var grid = new Ext.grid.GridPanel({               
width:orgGrid.getComputedWidth(),

height:orgGrid.getComputedHeight(),
viewConfig{forceFit:true}, autoScroll:true, }); grid.render(myGrid); window.onresize=function(){ grid.setWidth(0); grid.setWidth(myGrid.getComputedWidth()); };
posted on 2012-05-10 11:50  非著名博客  阅读(8767)  评论(0编辑  收藏  举报