我给表单的每个元素加上了id 
就有一个textfield的能通过getCmp()得到其元素,别的都是未定义
我加
listeners : {
afterrender : function (){alert('after');Ext.ComponentMgr.all.each(function(r){alert(r.id)});}
} 也是只有几个元素能拿到ID
items : [{
                 xtype:"panel",
                 border : false,       
                 layout : 'hbox',
                
                   items : [{
                 xtype: 'radiogroup',
                 border : false,
                 columns: 4,
                 items : [{
//name : 'base',
boxLabel:"固定基线值来源于 "
},{
xtype:"combo",
id : 'aaaa',
triggerAction:"all",
displayField : 'week',
valueField : 'value',
name : 'config.baseWeek',

allowBlank : false,
blankText : '请输入选择基线日期',
style: {
             marginBottom: '5px'
          },
store:new Ext.data.SimpleStore({
fields:["week","value"],
data:[["第一周","第一周"] , ["第二周","第二周"],["第三周","第二周"],["第四周","第二周"]]}),  
     editable:false,   
    mode: 'local', 
    maxHeight: 200

}]
}] 这个拿不到ID

解决方案 »

  1.   

    不是每个通过getCmp()都能拿到的,比如tbar里的textfield,但是可以通过其它的方式拿到
      

  2.   

    可是我这里边有三个textfield能得到,另外两个都得不到,没在tbar里边,就是正常的表单,还有什么办法得到元素?
      

  3.   

    用firebug或者IE开发者工具查看一下生成的文档结构里是不是包含这个id
      

  4.   

    楼主你的这个JS是不是有问题啊,在radiogroup里面放combobox,建议改下试试