文档章节

通用下拉框实现&带级联

暗之幻影
 暗之幻影
发布于 2014/12/31 14:12
字数 336
阅读 30
收藏 0
Ext.define('Plat.comp.EnumCombo', {
	extend : 'Ext.form.field.ComboBox',
	alias : 'widget.enumCombo',
	dataUrl : '',// 请求绑定数据的地址
	emptyText : "请选择...",
	mode : 'local',
	queryMode : 'local',
	forceSelection : true,
	triggerAction : 'all',
	typeAhead : true,
	selectOnFocus : true,
	//valueField : 'value',
	//displayField : 'key',
	setValue: function(v) {
		console.log('=========>' + v);
		
		this.callParent(arguments);
		if(this.ownerCt) {
			if(this.cascadeChilds) {
                for(var i=0; i<this.cascadeChilds.length; i++) {
                    var cascadeChild = this.cascadeChilds[i];
                    //alert("级联下拉框必须设置级联子下拉框属性:cascadeChild");
                    var cascadeParamName = cascadeChild.paramName || 'parentId';
                    //this.listeners = Ext.apply({  
                     //   "select": function (combo, record, index) {  
                             
                    //    }  
                    //}, this.listeners);
                    var child = this.ownerCt.getComponent(cascadeChild.itemId);
                    if(!child) {
                    	child = this.up('form') && this.up('form').down('[itemId='+cascadeChild.itemId+']');
                    }
                    if(child) {
                    	if(child.getStore) {
	                    	child.getStore().getProxy().extraParams[cascadeParamName] =  this.getValue();
	                    	child.getStore().reload();
                    	}
                    	child.onCascade && child.onCascade(this.getValue());
                    }
                }
            }
		}
	},
	initComponent : function() {
	
		var valueField = this.valueField || 'value';
		var displayField = this.displayField || 'key';
		
		this.store = Ext.create('Ext.data.Store', {
			fields : [{
				type : 'string',
				name : displayField
			}, {
				type : 'string',
				name : valueField
			}],
			proxy : {
				type : 'ajax',
				url : this.dataUrl,
				reader : {
					type : 'json'
				}
			}
		});
		this.store.load();
		this.callParent(arguments);
	}
});

使用示例

{  
		        xtype: 'arkComboTree',
		        fieldLabel : '场景图层',
		        name : 'sceneLayerId',   
		        editable: false,
		        checkModel:'single',
		        storeUrl : PlatGlobal.contextpath + '/ark/plat/paper/paperlayout/queryAllSceneLayer.do',
		        //'/ark/plat/dept/org/role/data.json',  
		        //cascade : 'child',//级联方式:1.child子级联;2.parent,父级联,3,both全部级联  
		        //checkModel:'single',//当json数据为不带checked的数据时只配置为single,带checked配置为double为单选,不配置为多选  
		        // width : 270,  
		        rootId : '1',  
		        rootText : 'DRP',  
		        treeNodeParameter : '',
		        // 级联配置
		        cascadeChilds: [{
		        itemId: 'sourceSceneElement',// 对应下面这个combox的itemId
		        paramName: 'sceneLayerId'// 发送后台的参数名称
		        }, {
		        itemId: 'targetSceneElement',
		        paramName: 'sceneLayerId'
		        }]
	},{
                xtype : 'enumCombo',
                editable: false,
                fieldLabel : '源场景元素',
                name : 'sourceSceneElement',
                itemId: 'sourceSceneElement',// 必须,级联下拉框中父下拉框需要根据这个itemId找到该下拉框
                dataUrl: PlatGlobal.contextpath + '/ark/plat/paper/paperlayout/querySceneElements.do',
                displayField: "name",  
            	valueField: "id",  
            	allowBlank : false
            }


© 著作权归作者所有

暗之幻影
粉丝 20
博文 377
码字总数 71245
作品 0
南京
高级程序员
私信 提问
请教一下关于数据级联和自动完成问题?

现在如果界面有三个下拉框,A ;B;C; A级联B B级联C 但是 B还需要带一些数据到界面,也就是下拉框自动完成,那么怎么去实现呢?为什么我两个都去做的时候却只能实现下拉框自动完成,而级联下拉...

shimingyuan
2013/04/10
167
1
input搜索下拉提示框,支持拼音检索、过滤、级联、自定义数据源的ajax异步下拉展示

为解决大数据量下拉字典效率及操作问题,整理出通用的数据字典模块,所有字典数据可在数据库维护,在大数据量时采用分页下拉的展示方式,同时支持拼音简拼搜索,代码项、代码值搜索等,支持无...

神话无名
2018/06/07
516
1
使用js实现下拉框动态级联

用js 动态实现下拉框的动态级联,下拉框的值还要能让客户修改,最主要的是动态级联,那个高手有例子?

叶知秋
2012/01/18
3K
4
Kictto/JqueryCombinedCommissioningPlugin

#Jquery N级联调插件 #JqueryCombinedCommissioningPlugin jquery插件,实现多级联调,无论是二级,三级,还是更多级联调,以及初始值的设置,都可以直接在插件初始化的时候实现,当然了,设...

Kictto
2015/12/28
0
0
如何将json对象解析出来的数据动态传入下拉列表框

要实现这里传入到下拉列表框的数据,能和前面的下拉列表框级联

Scoundrel浩
2016/06/29
646
1

没有更多内容

加载失败,请刷新页面

加载更多

解决vim打开之后乱码的问题

在Windows中的文档,传输到Linux系统中(使用rz命令),出现乱码 root@localhost ~]# rpm -qf `which iconv` glibc-common-2.17-105.el7.x86_64 [root@localhost ~]# rpm -ihv /mnt/Packages......

寰宇01
38分钟前
2
0
aldi 2017年1月记录

../../tools/CBLAS/lib/cblas_LINUX.a ../../tools/lapack-3.4.2/liblapacke.a \../../tools/lapack-3.4.2/librefblas.a -lgfortran \../../tools/lapack-3.4.2/liblapack.a \../../......

MtrS
39分钟前
2
0
Choerodon如何进行日志收集与告警

作者:董文启 应用程序日志是由软件应用程序记录的事件文件, 它一般包含错误,信息事件和警告。一个良好的日志系统有助于快速发现问题,定位问题,同时也为业务分析起到一定的作用。 传统E...

Choerodon
51分钟前
3
0
js二维码生成插件“jquery.qrcode.min.js”

<!doctype html> <html> <head> <meta charset="utf-8" /> <title>生成二维码</title> <script type='text/javascript' src='http://cdn.staticfile.org/jquery/2.1.1/jquery.min.js'></scri......

泉天下
54分钟前
1
0
Spring AOP之同一个对象方法内部自调用导致事务失效问题

对于像我这种喜欢滥用AOP的程序员,遇到坑也是习惯了,不仅仅是事务,其实只要脱离了Spring容器管理的所有对象,对于SpringAOP的注解都会失效,因为他们不是Spring容器的代理类,SpringAOP,就切入不...

xiaomin0322
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部