level 1
核桃仁是
楼主
我创建了一个radiogroup(如性别:男,女),然后我想从后台得到数据展示在前台,问题是展示可以,就是当我修改时,提交表单时在火狐浏览器中调试看到传的值没改变,还是原来的值,不知道怎么设置radiogroup的值,还有就是提交表单时radiogroup的值是怎么传过去的,还有就是radiogroup的change事件我加上去了就是用不了,哪位大神帮我看看,急用啊,谢谢了。。。
代码如下:
{
xtype:'radiogroup' ,
id:'radiogroup',
fieldLabel : '性别' ,
labelWidth : SetLabelWidth ,
width : SetInputWidth ,
items : [],
cls: 'x-check-group-alt',
autoRender : true ,
autoShow : true ,
listeners:
{
beforerender:function(me,eOpts)
{
var store = Ext.create('BSF.store.ComboxStore' ,{enumName : 'EMP_SEX_MAP'}) ;
var key = me.up('form').getRecord().get('emp_sex') ;
store.load(function(records,operation,success){
Ext.Array.each(records,function(record,index){
var temp = Ext.create('Ext.form.field.Radio',{
name : 'emp_sex' ,
boxLabel : record.get('value') ,
inputValue : record.get('key')
});
temp.on('change',function(me,newValue,oldValue,eOpts){
if(newValue)
{
//给radiogroup设置值-------没反应
Ext.getCmp('radiogroup').setValue({emp_sex:[record.get('key')]}) ;
//当我改变性别,得到的值却是数组-------不解
Ext.getCmp('radiogroup').getValue() ;
}
}) ;
me.items.add(temp) ;
me.doLayout() ;
})
});
} ,
change : function(me,newValue,oldValue,eOpts)
{
console.info(me) ;
}
}
}
2014年02月16日 09点02分
1
代码如下:
{
xtype:'radiogroup' ,
id:'radiogroup',
fieldLabel : '性别' ,
labelWidth : SetLabelWidth ,
width : SetInputWidth ,
items : [],
cls: 'x-check-group-alt',
autoRender : true ,
autoShow : true ,
listeners:
{
beforerender:function(me,eOpts)
{
var store = Ext.create('BSF.store.ComboxStore' ,{enumName : 'EMP_SEX_MAP'}) ;
var key = me.up('form').getRecord().get('emp_sex') ;
store.load(function(records,operation,success){
Ext.Array.each(records,function(record,index){
var temp = Ext.create('Ext.form.field.Radio',{
name : 'emp_sex' ,
boxLabel : record.get('value') ,
inputValue : record.get('key')
});
temp.on('change',function(me,newValue,oldValue,eOpts){
if(newValue)
{
//给radiogroup设置值-------没反应
Ext.getCmp('radiogroup').setValue({emp_sex:[record.get('key')]}) ;
//当我改变性别,得到的值却是数组-------不解
Ext.getCmp('radiogroup').getValue() ;
}
}) ;
me.items.add(temp) ;
me.doLayout() ;
})
});
} ,
change : function(me,newValue,oldValue,eOpts)
{
console.info(me) ;
}
}
}