错误信息图片:
![](https://img-my.csdn.net/uploads/201205/14/1336972998_8931.png)
var grid = new Ext.Panel({ id:'gridpanel', height : hig, width : wid, border : false, trackMouseOver : false, columnLines : true, bodyStyle:'border:solid 1px red;' }); //创建模板 var tpl=new Ext.XTemplate( '<table id="grid" ></table>' ); //重写绑定模板 tpl.overwrite(grid.body); var tabs = new Ext.TabPanel({ renderTo: document.body, plain:true, activeTab: 0, frame:true, width:Ext.getBody().getWidth(), height:Ext.getBody().getHeight()-35, items:[ {layout:'fit',width:1000, title: '统计数据表',items:grid} ] });
为什么会出现这样的错误,是因为在重写模版的时候该panel还没有渲染到界面,此时没有body所以会出现以上的问题,解决问题只需要将代码,移至tabPanel的下方即可.
var grid = new Ext.Panel({ id:'gridpanel', height : hig, width : wid, border : false, trackMouseOver : false, columnLines : true, bodyStyle:'border:solid 1px red;' }); var tabs = new Ext.TabPanel({ renderTo: document.body, plain:true, activeTab: 0, frame:true, width:Ext.getBody().getWidth(), height:Ext.getBody().getHeight()-35, items:[ {layout:'fit',width:1000, title: '统计数据表',items:grid} ] }); //创建模板 var tpl=new Ext.XTemplate( '<table id="grid" ></table>' ); //重写绑定模板 tpl.overwrite(grid.body);
特别是在重写的时候需要注意,.