combo 二级联动

{
									xtype : 'combo',
									hiddenName : 'selPersonForUnit',
									fieldLabel : '选择人员',
									triggerAction : 'all',
									readOnly : true,
									editable : false,
									lazyInit : false,
									mode : 'local',
									store : UnitPersonsDS,
									displayField : 'persName',
									valueField : 'persid',
									listeners : {
										select : function(combo, record, index) {
											UnitFuncDS.load({
														params : {
															persid : combo
																	.getValue()
														}
													});
										}
									}
								}, {
									xtype : 'combo',
									hiddenName : 'selFuncForUnit',
									fieldLabel : '选择岗位',
									triggerAction : 'all',
									readOnly : true,
									editable : false,
									lazyInit : false,
									mode : 'local',
									store : UnitFuncDS,
									displayField : 'funcName',
									valueField : 'funcId'
								}

 我是这样做的

2个 combo 都是local,store的数据从服务器读

点击一个按钮会弹出一个window,上面就有这2个combo,在弹出的时候就第一个combo的store就会去load数据,然后因为combo的mode 为local,这时下拉第一个combo会展示加载好的数据(假如为remote的话会再次加载,造成浪费)

然后设置第一个combo的select事件是加载第2个combo的store的数据(把第一个combo的选择数据传到后台),然后下拉第2个的时候就可以展示数据,以此类推可以一直联动下去

 

关于mode

假如为local 则 点击下拉的时候 直接combo去取store的数据  然后展示 不管有没有

假如为remote 则一定会让store load一次,不管之前是否已有数据

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值