博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
store下拉框同步_通用下拉框实现&带级联
阅读量:6514 次
发布时间:2019-06-24

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

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

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

}

转载地址:http://otifo.baihongyu.com/

你可能感兴趣的文章
常用的东西一点一点记
查看>>
ios中播放gif动画
查看>>
Openfiler搭建存储
查看>>
我的友情链接
查看>>
使用webtatic源升级php
查看>>
CentOS内存占满后释放缓存
查看>>
查看,控制进程
查看>>
提高活动目录性能与安全的LSASS进程
查看>>
python selenium的在线安装及离线安装
查看>>
Linux(CentOs5.5)显示行号和直接跳转到某一行在VI编辑器下
查看>>
Zookeeper Api(java)入门与应用
查看>>
<四>基于Fourinone实现集群管理demo
查看>>
我的友情链接
查看>>
关于flash中编译时出现嵌入字体问题
查看>>
我的友情链接
查看>>
华为MediaPad平板年底登录中国上市
查看>>
Android ProgressDialog的示例
查看>>
【OutOfMemoryError】项目过程中碰到的各种OOM总结
查看>>
android高级应用第二阶段
查看>>
中小型网络的域环境搭建-(搭建DHCP服务器)
查看>>