第一次点击一个按钮“优化”调用下面的方法,
var widgetarr=new Array("weblist","webrsslist","newslist","bloglist","booklist","piclist","videolist","relatedlist","wikilist","saylist","historylist","bbslist","tiebalist","wikiknowledgelist","minibloglist","rsslist");
var wiget_typeid=0;
var wiget_kid=0;
var wiget_keyword='';
var wiget_cid=0;var seoPanel=function(id,keyword,cid){
wiget_kid=id;
   wiget_keyword=keyword;
   wiget_cid=cid;
//alert(wiget_cid);
//record,数据记录,用在store中
//通过Ext.data.Record.create创建
//创建的数据形式为{name:'id',type:'text'}
//与jsonStore下data中存储的数组形式对应
var widgetRecord=Ext.data.Record.create([
     {name:'id'},{name:'wtname'},{name:'tid'},{name:'author'},{name:'mininfo'},{name:'maxinfo'},{name:'mininterval'},
     {name:'create_time'},{name:'update_time'},{name:'typeid'},{name:'ctablenum'},{name:'memcachesavenum'},{name:'roleid'}    
]);
// widgetstore
var widgetStore=new Ext.data.Store({
 id:'widgetstore',
 url:urlbase+'searchsource/searchsourceinterface/id:'+id+'/keyword:'+keyword+'/cid:'+cid,
 reader:new Ext.data.JsonReader({
    url:urlbase+'searchsource/searchsourceinterface/id:'+id+'/keyword:'+keyword+'/cid:'+cid,//默认的数据源地址,继承时需要提供
    root: "rows",
// totalProperty:"totalCount",
},widgetRecord),
remoteSort:true, 
});
widgetStore.load({callback :function(r,options,success){ 
//var ctablenum=r[0].get('ctablenum');

//weblistPanel=weblistPanel(id,cid,1,ctablenum,keyword);
//webrsslistPanel=webrsslistPanel(id,cid,2,ctablenum,keyword);
// newslistPanel=newslistPanel(id,cid,3,ctablenum,keyword);
// bloglistPanel=bloglistPanel(id,cid,4,ctablenum,keyword);
// booklistPanel=booklistPanel(id,cid,5,ctablenum,keyword);
// piclistPanel=piclistPanel(id,cid,6,ctablenum,keyword);

//seoPanel1.add(weblistPanel);
//seoPanel1.add(webrsslistPanel);
// seoPanel1.add(newslistPanel);
// seoPanel1.add(bloglistPanel);
// seoPanel1.add(booklistPanel);
// seoPanel1.add(piclistPanel);

/* */
//seoPanel1.add({title:'11',html:'sssss'});
for(var i=0;i<6;i++)
{
//alert(r[i].get('id'));
var typeid=r[i].get('typeid');
var cid=r[i].get('cid');
var wigetId=r[i].get('id');
var ctablenum=r[i].get('ctablenum');
var wtname=r[i].get('wtname');
var panel=getPanelName(wigetId,id,cid,typeid,ctablenum,wtname,keyword);

if(i==0)
{

//alert("-------------");
weblistPanel=weblistPanel_bak(id,cid,typeid,ctablenum,keyword,panel);
//alert(weblistPanel.id);
//panel.add(weblistPanel);
//panel.add({tile:'11',html:'sssss'});
} //panel.add({title:'11',html:'sssss'});
//alert(i);
//alert(panel.id);
seoPanel1.add(panel);
seoPanel1.doLayout();


}
 
}

});


function getPanelName(id,kid,cid,typeid,ctablenum,wtname,keyword)
{
/*
var item;
if(id==1)
{
item=[{title:'1111',html:'2222222'}];
}
*/
var seoPanel3=new Ext.Panel({
id:"w_widgetPanel"+id,
// activeItem:1,
title:wtname,
region : 'center',
autoHeight:true,
margins : '0 5 5 0',
//resizeTabs : true,
minTabWidth : 50,
tabWidth : 85,
enableTabScroll : true,
closable:true,
layout:'fit',
//调用其他微件加载事件
param1:kid,
param2:cid,
param3:typeid,
param4:ctablenum,
param5:keyword,

// listeners: {activate: handleActivate},
listeners: {activate: handleActivate},
 
//items:[{title:'1111',html:'2222222'}]
// items:item

});
return seoPanel3;
}
   function handleActivate(tab){
       //alert(tab.param1+tab.id+ ' was activated.');
   var id=tab.param1;
   var cid=tab.param2;
   var typeid=tab.param3;
   var ctablenum=tab.param4;
   var keyword=tab.param5;
  // alert(id);
   //gei 全局的typeid,kid,keyword,cid赋值
   wiget_typeid=typeid;
//tab
//tab.removeAll();
    panel=weblistPanel_bak(id,cid,typeid,ctablenum,keyword,tab);
tab.doLayout();
//seoPanel1.add(panel);
//seoPanel1.doLayout();

    }

var seoPanel1=new Ext.TabPanel({
id:"widgetPanel",
title:"关键词优化",
region : 'center',
autoHeight:true,
margins : '0 5 5 0',
//resizeTabs : true,
//minTabWidth : 50,
tabWidth : 85,
enableTabScroll : true,
activeTab :0,
closable:true,
layoutOnTabChange:true,
deferredRender :false });

var panel = new Ext.Panel({
title:'关键词优化',
region:'center',
height:500,
autoScroll:true,
closable:true,
tbar:new Ext.Toolbar([
                      {xtype:'hidden',name:'typeid'},
                   '->',
                   {
                    text:'审批模式',
                    iconCls:'shenpiIconCss',
                    handler:function(){
alert(wiget_typeid+"----"+wiget_keyword+"----"+wiget_kid+'---'+wiget_cid);
                    //var panel=Ext.getCmp('')
                    }
                   
                   },'-',
                   {
                    text:'参数模式',
                    iconCls:'canshuIconCss',
                   },'-',
                   {
                    text:'预览',
                    iconCls:'bqylIconCss',
                   },'-',
                   {
                    text:'提交',
                    iconCls:'bqtjIconCss',
                   },'-',
                   {
                    text:'保存',
                    iconCls:'bqbcIconCss',
                   },'-',
                   {
                    text:'上一词',
                    iconCls:'shangyiciIconCss',
                   },'-',
                   {
                    text:'下一词',
                    iconCls:'xiayiciIconCss',
                   }
                ]),

items:[seoPanel1]
});
// weblistPanel=weblistPanel();
// seoPanel1.add(weblistPanel);

// return seoPanel1;
return panel;
}

解决方案 »

  1.   

    显示出来几个panel
    但是在此调用panel中的数据就是不显示,不知道代码哪里错了????
    weblistPanel_bak=function(id,cid,typeid,ctablenum,keyword,panelObj){
    var record=new Ext.data.Record.create([
            {name:'md5'}    
       ]);
    var store=new Ext.data.Store({
      id:'webliststore',
    url:urlbase+'searchsource/getweblistmd5ext/id:'+id+'/typeid:'+typeid,
    reader:new Ext.data.JsonReader({
        url:urlbase+'searchsource/getweblistmd5ext/id:'+id+'/typeid:'+typeid,//默认的数据源地址,继承时需要提供
        root: "rows",
    totalProperty:"totalCount",
    },record),
    remoteSort:true, 
    }); store.load({callback :function(r,options,success){ 
    var length=r.length;
    //alert(r.length);
    var i = 0;
    var md5=r[i].get('md5');
    var recordname='record'+i;
    var storename='store'+i;
    var panelname='panel'+i;
    var smname='sm'+i;

    smname = new Ext.grid.CheckboxSelectionModel();

    recordname=new Ext.data.Record.create([
                        {name:'id'},{name:'title'},{name:'url'},{name:'description'},{name:'create_time'},{name:'update_time'},{name:'md5'},
                        {name:'isnew'},{name:'isdig'},{name:'isjing'},{name:'dingtime'},{name:'jingtime'},{name:'displayorder'},{name:'kid'},{name:'tablename'}    
                   ]);
    storename=new Ext.data.Store({
      id:'webliststore',
    url:urlbase+'searchsource/getweblistext/id:'+id+'/cid:'+cid+'/typeid:'+typeid+'/ctablenum:'+ctablenum+'/keyword:'+keyword+'/md5:'+md5,
    reader:new Ext.data.JsonReader({
        url:urlbase+'searchsource/getweblistext/id:'+id+'/cid:'+cid+'/typeid:'+typeid+'/ctablenum:'+ctablenum+'/keyword:'+keyword+'/md5:'+md5,//默认的数据源地址,继承时需要提供
        root: "rows",
    totalProperty:"totalCount",
    },recordname),
    //remoteSort:true, 
    });
    storename.load();
    //alert(4545);return;

    panelname=Ext.extend(Ext.widget.CrudPanel,{
    id:'weblistgr'+md5,
    title:"<font size=3 color='blue'>正在优化"+ keyword +"搜索结果</font>",
    autoHeight:true,
    autoScroll:true,
    collapsible:true,

    //创建窗口
         createWin:function()
         {
         return this.initWin(330,240,"加精设置");
         },
         createForm:function(name){
         var form = new Ext.form.FormPanel({
         frame:true,
         labelWidth:70,
         labelSeparator:':',
         labelAlign:'right',
              layout:'form',
         items:[
            
         {
                layout:'column',
                          items:[
                              {
                                  layout: 'form',
                                  items: [new Ext.form.Radio({fieldLabel: '加精状态',boxLabel:'加精', name:'type',checked:true})]
                              },
                              {items: [new Ext.form.Radio({boxLabel:'不加精', name:'type'})]}
                          ]
        
         },
         {
                layout:'column',
                          items:[
                              {
                                  layout: 'form',
                                  items: [new Ext.form.Radio({fieldLabel: '加精时限',boxLabel:'不限制',inputvalue:1, name:'jingtime',checked:true})]
                              }
          
                          ]
        
         },{
         layout:'form',
                         items: [
                                 {
                                  layout: 'form',
                                 
                              items:[
             {
                layout:'column',
                          items:[
                              {
                                  layout: 'form',
                                  items: [new Ext.form.Radio({boxLabel:'1天',inputvalue:2, name:'jingtime'})]
                              },
                              {items: [new Ext.form.Radio({boxLabel:'3天',inputvalue:3, name:'jingtime'})]},
                              {items: [new Ext.form.Radio({boxLabel:'1周',inputvalue:4, name:'jingtime'})]},
                              {items: [new Ext.form.Radio({boxLabel:'1个月',inputvalue:5, name:'jingtime'})]},
                              {items: [new Ext.form.Radio({boxLabel:'3个月',inputvalue:6, name:'jingtime'})]},
                          ]
        
         }
                          ]
                                 }
    //                              new Ext.form.Radio({fieldLabel: '加精时限',boxLabel:'不限制', name:'jingtime',checked:true})
                                 ],
        
         },{
         layout:'form',
                         items: [
                                 {
                                  layout: 'form',                              
                              items:[
             {
                layout:'column',
                          items:[
                              {
                                  layout: 'form',
                                  items: [new Ext.form.Radio({boxLabel:'自定义', name:'jingtime'})]
                              },
                              {
                               xtype:'textfield',
                               width:80,
                               id:'jingnum',
                               name:'jingnum',
                               
                              },
                              {
                               xtype:'combo',
                               width:80,
                               id:'jingunit',
                               name:'jingunit',
                               
                               textAlign:'center',
          hiddenName:'value',
        
                triggerAction:'all',//单击触发按钮显示全部数据
          store:new Ext.data.SimpleStore({
         fields:['event','value'],
         data:[['小时','1'],['天','2'],['月','3']]
          }),
         displayField:'event',//定义显示的字段
         valueField:'value',//定义值字段
         mode:'local',//本地模式
         forceSelection:true,//要求输入值必须在列表中存在
         resizable:false,//是否允许改变下拉框大小
         typeAhead:true,//允许自动选择匹配的剩余部分文本
         value:'1',//默认选择的值
         handleHeight:10,//下拉列表中拖动手柄的高度
                              },
                          ]
        
         }
                          ]
                                 }
    //                              new Ext.form.Radio({fieldLabel: '加精时限',boxLabel:'不限制', name:'jingtime',checked:true})
                                 ],
        
         }
                ]
         });
         return form;
         },
        
      

  2.   

     initComponent : function(){     
    this.sm = new Ext.grid.CheckboxSelectionModel();
    this.cm = new Ext.grid.ColumnModel([   
                     //new Ext.grid.RowNumberer(),//获得行号
                     this.sm,
                     {header: "标题", width: 300, dataIndex:"title",align:'center'},
                     {
                      header: "创建时间",
                      width: 130,
                      dataIndex:"create_time",
                      align:'center',
                      renderer:function(value){
                      var time=new Date(value*1000);
                      return time.format("Y-m-d H:i");
                      }
                     },
                     {header: "审批时间",width: 130, dataIndex:"update_time",align:'center'},
                     {
                      header: "状态",
                      width: 80,
                      dataIndex:"isnew",
                      align:'center',
                      renderer:function(value,meta,record){
                      var isjing=record.get('isjing');
                      var isnew=record.get('isnew');
                      var isdig=record.get('isdig');
                      var dingtime=record.get('dingtime');
                      var jingtime=record.get('jingtime');
                      var str='';
                     
                      if(isdig==1){
                      str=dingtime;
                      }else if(isjing==1)
                      {
                      str=jingtime;
                      }
                      return str;
                      }
                     },
                     new Ext.grid.RowNumberer({
                      header:'行号',
                      width:40,
                      aligh:'center'
                     }),//获得行号
                     {
                 header:"操作",
                 width:250,
    //                      dataIndex:'roleid',
                   renderer: function (value, meta, record) {  
                     //在这里定义了4个操作,分别赋予不同的css class以便区分  
                   var formatStr='';
                    formatStr="<a href='javascript:void({0});' onclick='javscript:return false;' class='alarm_check'>修改</a> | <a href='javascript:void({1});' onclick='javscript:return false;' class='alarm_remove'>删除</a> ";
                    formatStr+="| <a href='javascript:void({0});' onclick='javscript:return false;' class='alarm_jing'>加精</a> | <a href='javascript:void({1});' onclick='javscript:return false;' class='alarm_ding'>置顶</a> ";
                    formatStr+="| <a href='javascript:void({0});' onclick='javscript:return false;' class='alarm_up'>上移</a> | <a href='javascript:void({1});' onclick='javscript:return false;' class='alarm_down'>下移</a> ";
           
                     var resultStr = String.format(formatStr, record.get('id'), record.get('id'), record.get('id'));  
                     return "<div class='controlBtn'>" + resultStr + "</div>";  
                   }.createDelegate(this),
                
                 align:'center'
                      }            
                 ]);
    //record,数据记录,用在store中
    //通过Ext.data.Record.create创建
    //创建的数据形式为{name:'id',type:'text'}
    //与jsonStore下data中存储的数组形式对应
    this.record=recordname;
      this.store=storename;
         
     panelname.superclass.initComponent.call(this);   //调用基类的方法      
        }
    });

    panelname1=new panelname();
    // panelname=new Ext.Panel({title:'title'+i});

    panelObj.add(panelname1);
    }

    });


    return panelObj;
    }请问怎么解决呢?