b is null

错误信息图片:

        	
                       	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);
                  	   


特别是在重写的时候需要注意,.

posted @ 2012-05-14 13:23  java简单例子  阅读(177)  评论(0编辑  收藏  举报