Ext下拉框的用法,并选中某一项

1 篇文章 0 订阅

Ext下拉框使用方案

	//定义
	var WardLoc = new Ext.form.ComboBox({
		name : 'WardLoc',
		id : 'WardLoc',
		typeAhead:true,
		store : new Ext.data.Store({
			proxy : new Ext.data.HttpProxy({
				url : "XXXX/XXXX" 			//在url对应后台方法里,处理传入的数据
			}),
			reader : new Ext.data.JsonReader({
				root : 'rows',
				totalProperty : 'results',
				fields : [{
					'name' : 'LocDes',
					'mapping' : 'LocDes'
				}, {
					'name' : 'LocDr',
					'mapping' : 'LocDr'
				}]
			}),
			baseParams : {
				className : '类名',
				methodName : '方法名',
				type : '查询类型'
			}
		}),
		tabIndex : '0',
		listWidth : '400',
		height : 18,
		width : 191,
		xtype : 'combo',
		displayField : 'LocDes',		//显示值
		valueField : 'LocDr',				//实际值
		hideTrigger : false,
		queryParam : 'HsDr',
		forceSelection : true,
		triggerAction : 'all',
		minChars : 1,
		pageSize : 10,
		typeAhead : true,
		typeAheadDelay : 1000,
		loadingText : 'Searching...'
	 });
 
	 //放入对应的位置
	 tobar.addItem("-","下拉框",WardLoc);


	 //下拉框加载前需要传入的参数赋值
   	  WardLoc.store.on("beforeLoad",function(){
 		var laststr1=WardLoc.lastQuery
       if (laststr1!=undefined)
       WardLoc.store.baseParams.ward=laststr1;
       WardLoc.store.baseParams.HsDr=1;
       WardLoc.store.baseParams.typ="Ward";
	});
	
	//触发加载完事件
	var value="123456"	//实际值
	WardLoc.store.on("load",function(){ 
		var length = this.data.length
		for(var i = 0; i<length ;i++){ 
			if (this.getAt(i).data.LocDr == value ){
				Ext.getCmp("WardLoc").setValue(value);
				Ext.getCmp("WardLoc").disable(); //选中后,同时不可选择
			}
		}
   });   
   
   //执行了load,才会真正从后台获取数据
	WardLoc.store.load({
    		params : {
	   			start : 0,
	   			limit : 200
			},
	})

还可以通过callback函数合并,如下

 	 WardLoc.store.load({
 		params : {
			start : 0,
			limit : 200
		},
		callback : function() {
			var length = this.data.length
	 		for(var i = 0; i<length ;i++){ 
	 			if (this.getAt(i).data.LocDr == session['LOGON.CTLOCID'] ){
	 				Ext.getCmp("WardLoc").setValue(session['LOGON.CTLOCID']);
	 				Ext.getCmp("WardLoc").disable();
	 			}
 			}
		}
 	})
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值