错误信息图片:
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);
特别是在重写的时候需要注意,.