码农的空间

codding
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Extjs RadioGroup中Radio的切换

Posted on 2010-09-05 03:42  我是孙海龙  阅读(6299)  评论(1编辑  收藏  举报

现在用Ext+Struts2开发项目,遇到了一个问题,RadioGroup中的Radio选择了其中一个之后,另一个不能自动的设置为未选中,今天写了个测试程序,终于成功了,把代码贴出来以供本人及同行日后参考。

Ext.onReady(function(){
	Ext.QuickTips.init();
	var adminRadio=new Ext.form.Radio({
		boxLabel:'管理员',
		inputValue:'admin',
		listeners:{
			'check':function(){
				//alert(adminRadio.getValue());
				if(adminRadio.getValue()){
					userRadio.setValue(false);
					adminRadio.setValue(true);
				}
			}
		}
	});
	var userRadio=new Ext.form.Radio({
		boxLabel:'普通用户',
		inputValue:'user',
		listeners:{
			'check':function(){
				if(userRadio.getValue()){
					adminRadio.setValue(false);
					userRadio.setValue(true);
				}
			}
		}
	});
	var _form=new Ext.form.FormPanel({
		renderTo:'login-form',
		title:'系统登录',
		frame:true,
		width:290,
		height:160,
		layout:'form',
		buttonAlign:'center',
		labelAlign:'center',
		defaults:{width:160,labelWidth:80,xtype:'textfield'},
		items:[
			{fieldLabel:'用 户 名',vtype:'alpha',id:'name',name:'name'},
			{fieldLabel:'通 行 证',inputType:'password',vtype:'alpha',id:'pass',name:'pass'},
			{
				xtype:'radiogroup',
				fieldLabel:'用户类型',
				id:'typeRadio',
				items:[
					adminRadio,userRadio
				]
			}
		],
		buttons:[
			{text:'登 录',style:'margin-right:15'},
			{
				text:'清 除',
				style:'margin-left:15',
				handler:function(){
					var _name=_form.findById('name').setValue('');
					var _pass=_form.findById('pass').setValue('');
				}
			}
		]
	});
});

显示效果如下所示: