extjs checkboxGroup 复选框的用法
类别:Web前端 浏览量:5231
时间:2013-10-14 extjs checkboxGroup 复选框的用法
extjs checkboxGroup 复选框的用法在extjs中,为便于功能实现,通常会使用到checkboxgroup以及radiogroup的控件,在实际使用中,如何获取或设置该控件的值?下面通过实例介绍一下。
<script type="text/javascript">
Ext.onReady(function() {
new Ext.form.FormPanel({
title:'CheckboxGroup黑人RadioGroup组件示例',
bodyStyle:'padding:5 5 5 5',//表单边距
frame:true,
height:120,
width:270,
renderTo:Ext.getBody(),
defaults:{//统一设置表单字段默认属性
labelSeparator:':',//分隔符
labelWidth:50,//标签宽度
width:200,//字段宽度
labelAlign:'left'//标签对齐方式
},
items:[{
xtype:'radiogroup',
fieldLabel:'性别',
columns:2,//2列
items:[
{boxLabel:'男',name:'sex',inputValue:'male'},
{boxLabel:'女',name:'sex',inputValue:'female'}
]
},{
xtype:'checkboxgroup',
fieldLabel:'爱好',
columns:3,//3列
items:[
{boxLabel:'游泳',name:'swim'},
{boxLabel:'散步',name:'walk'},
{boxLabel:'阅读',name:'read'},
{boxLabel:'游戏',name:'game'},
{boxLabel:'电影',name:'movie'}
]
}]
});
});
</script>
效果图:
取值
如何获取这个checkboxgroup值,查看API,getValue返回时对象形成的数组,为获取该值,通过一下代码:
var FileItype=showserach.getForm().findField('FileItype').getValue();
var s='';
for(i=0;i<FileItype.length;i++)
{s=s+','+FileItype[i].inputValue}
ds.baseParams={FileItype:s.substr(1)};
传递至后台,以字符串的方式进行:
根据后台数据动态创建CheckboxGroup
提示:
ExtJS中的CheckboxGroup(和RadioGroup)默认不能动态添加item。虽然它继承了Ext.form.Field,但是却类似于容器。
在CheckboxGroup构造是,它会将配置中的items等配置项处理生成一个对应的panel,该处理过程只有一次,所以很难对CheckboxGroup进行动态修改。
如果需要根据后台数据动态创建的话,最好试着创建整个CheckboxGroup,而不是动态添加item。
实现代码:
Ext.Ajax.request({
url: 获取动态数据的URL,
callback: function(options,success,response){
if(success = true){
var obj = eval( "(" + response.responseText + ")" );
//拼接checkbox子项目
var checkboxitems="";
for(var i = 0;i<obj.groups.length;i++){
if(checkboxitems!="")
checkboxitems+=",";
else
checkboxitems+="[";
var groupid = obj.groups[i].groupid;
var checkboxSingleItem = "{boxLabel:'"+obj.groups[i].groupname+"',name:'"+obj.groups[i].groupname+"',id:'"+obj.groups[i].groupid+"',inputValue:'"+obj.groups[i].groupid+"'";
var usergroup=obj.usergroups;
for(var j=0;j<usergroup.length;j++){
if(usergroup[j].groupid == groupid){
checkboxSingleItem += ",checked:'true'";
}
}
checkboxSingleItem+="}";
checkboxitems+=checkboxSingleItem;
}
checkboxitems+="]";
var itemsGroup = new Ext.form.CheckboxGroup({
fieldLabel: '选择权限',
name:'user_add_checkboxgroup',
width:380,
id:'user_add_checkboxgroup',
columns: 1,
name:'items',
width:360,
columns:1,
items:eval(checkboxitems)
});
addFormPanel.add(itemsGroup);
addFormPanel.doLayout();
} else {
Ext.MessageBox.alert('信息提示',"加载权限失败");
}
}
});
您可能感兴趣
- extjs checkboxGroup 复选框的用法
- extjs column列布局
- extjs Border边框布局
- extjs中Toolbar工具栏
- Extjs msgTarget 提示位置
- ExtJs常用代码片段
- extjs 日期控件
- extjs table布局
- Extjs中FieldSet的收缩和展开
- extjs accordion折叠布局
- ExtJs中XTemplate使用
- extjs中treegrid
- extjs实现树形下拉框
- ExtJs中getCmp、getDom、Get的区别
- extjs tabPanel的用法
- extjs card卡片式布局
- 三杨 共辅四朝帝王,构建明帝国内阁行政圈(三杨共辅四朝帝王)
- 红色文化进国企(红色文化进国企)
- 车友的选择| 轮毂该如何选(车友的选择轮毂该如何选)
- 秦海璐炫耀和王新军热恋蜜事,不料对方吐槽她吃饱后肚子撅老高(秦海璐炫耀和王新军热恋蜜事)
- 秦海璐一袭旗袍惹人倾心,将高级与淡雅展现的游刃有余(秦海璐一袭旗袍惹人倾心)
- 门外之见 海蛎子味 的表演,能走多远(门外之见海蛎子味)
热门推荐
- 火狐浏览器状态栏的恢复
- python批量转换图片格式(利用Python对文件夹下图片数据进行批量改名的代码实例)
- docker的启动的绝对命令(在docker中开启sshd操作)
- js实现分页
- nginx设置https访问(基于Nginx实现HTTPS网站设置的步骤)
- php上传文件的要求(PHP 文件上传限制问题)
- 织梦列表页分页怎么用(织梦首页和列表页怎么调用自定义字段)
- bootstraptable使用教程(bootstrap Table的使用方法总结)
- sql语句delete的用法(SQL删除语句DROP、TRUNCATE、 DELETE 的区别)
- sqlserver2000显示无服务器(SQL SERVER 2000 9003错误的解决方法只适用于SQL2000)