博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
extjs中使用ItemSelector 控件(从左边选到右边)
阅读量:5948 次
发布时间:2019-06-19

本文共 2665 字,大约阅读时间需要 8 分钟。

  最近在项目中需要使用到从左边选到右边的那种控件,在window中见过,不知道叫啥名字,后来知道了这种控件叫做ItemSelector控件(效果如下图)。

公司使用的是ext 3.4 ,在api中目前还找不到Itemselector的文档,后来在官方的examples中找到一个,需要利用到ux包中的扩展类来实现。

在这里分享一下给大家。

   1.首先需要引入两个js文件、一个css样式表,分别是:

    MultiSelect.js、ItemSelector.js、MultiSelect.css

    js文件可以在官方包中的examples\ux\form下面找到,css文件在examples\ux\css中找到

1 
2 ......3 4 5

 

    2.Ext.ux.form.ItemSelector = Ext.extend(Ext.form.Field,  {..)}

    ItemSelector其实是继承自field,这样我们就可以将其放入formPanel中:

    

/*未分配的条目*/ 		 var ds_from = new Ext.data.ArrayStore({			   	url:'./'+ORD_BARGAINDISTRIBUTE,			   	baseParams:{action:'aviliable',bizId:business_id},				pruneModifiedRecords : true,		        fields: [{name:'value'},{name:'text'}]	    	});	    	        /*已分配的条目*/		   	 var ds_to = new Ext.data.ArrayStore({	   	 	 	url:'./'+ORD_BARGAINDISTRIBUTE,	   	 	 	baseParams:{action:'fenpei',bizId:business_id},				pruneModifiedRecords : true,		        fields: [{name:'value'},{name:'text'}]	   	 });    	        ds_from.load();		ds_to.load();......                           new Ext.form.FormPanel({						region:'center',						id:'selector_form',						width:350,						bodyStyle:'padding:10px',						items:[{                        							xtype:'itemselector',      //设置此field类型为field							name:'itemselector',							hideLabel:true,                //隐藏标签							imagePath: './images',      //配置方向图标的文件夹位置					        multiselects: [{               //待选择框					                  width: 150,  					                  height: 260,					                  legend:'可选条目',					                  store: ds_from,        //待选择资源的结果集					                  displayField: 'text',     //显示的字段					                  valueField: 'value'      //值字段			          			},                                  {                   //已选择框					                  width: 150,					                  height: 260,					                  hideLabel:true,					                  legend:'已选条目',					                  store:ds_to,					                  displayField: 'text',    //显示的字段					                  valueField: 'value',        //值字段					                  tbar:[{					                    text: '清空',					                    iconCls:'remove',					                    handler:function(b,e){
                                        //用reset重置已选择的项 Ext.getCmp('selector_form').getForm().findField('itemselector').reset(); }     }]           }] }] })

     3.取值。

  

var select_values  = Ext.getCmp('selector_form').getForm().getValues(true);  //获取已选择的值

    取出来的值会包含空格以及一些无用的文字开头,这时候就需要我们自己处理格式化取出来的值了。

    4.感谢阅贴。

转载于:https://www.cnblogs.com/yijian-insist/p/4377457.html

你可能感兴趣的文章
jsp内置对象以及jsp动作
查看>>
Struts上路_09-数据类型转换
查看>>
定制CentOS
查看>>
Android Eclipse 修改默认查看图片的打开方式
查看>>
CMake与动态链接库(dll, so, dylib)
查看>>
myeclipse(eclipse)乱码处理
查看>>
SpringBoot 过滤器, 拦截器, 监听器 对比及使用场景
查看>>
数据库索引探索
查看>>
struts2使用json需要注意的问题
查看>>
gitlab runner 优化
查看>>
快速添加百度网盘文件到Aria2 猴油脚本
查看>>
mac 无法登录mysql的解决办法
查看>>
Shiro权限判断异常之命名导致的subject.isPermitted 异常
查看>>
Hello world travels in cpp - 字符串(2)
查看>>
struts2自定义拦截器
查看>>
Eclipse安装adt插件后之后看不到andorid manger
查看>>
Kafka服务端脚本详解(1)一topics
查看>>
Zookeeper 集群安装配置,超详细,速度收藏!
查看>>
js中var self=this的解释
查看>>
js--字符串reverse
查看>>