EXT 实现省份--城市--地区--级连

在实现级连的时候,我把所有的数据一次性的存来前台,

你再去改天一个省份或一个城市的时就不用再去访问服务器了,

将低了,服务器的压力,

 

在本人的博客上有三个省份,城市,地区的,所有数据

本人将它解成字符串,然后比后台定义成字符串,直接发到前台来,

减少服务器的读取数据的时间,

 

解析后的数据如下面:

 



 

 

 

把这一些数据发到前台时就把它实例到对象就可以了。呵

 

ext 代码如下:呵呵

 

Ext.Ajax.request({
	url: 'orderManager/AJAXDogetProvincesCitiesDistrictsData.action',
	success: function(response){
		var json = Ext.util.JSON.decode(response.responseText) ;
   			
		//城市
		var citiesDs= new Ext.data.SimpleStore({
			data: [],
			fields: ['value','name']
		});
   			
   		//地区
   		var districtsDs=new Ext.data.SimpleStore({
			data: [],
			fields: ['value','name']
		});

		var panel=new Ext.Panel({
			width:300,
			items:[{
				xtype:'combo',
				store :new Ext.data.SimpleStore({
					data: json.provinces,
					fields: ['value','name']
				}),
				triggerAction : 'all',// 显示所有下列数据,一定要设置属性triggerAction为all 
				fieldLabel: '请选择省份',
				allowBlank : false,//不允许为空 
				blankText:'请选择',
				valueField : 'value',//值 
				displayField : 'name',//显示文本 
				 readOnly : true,//是否只读
				emptyText : '请选择',
				editable: false,//是否允许输入 
				mode: 'local',
				listeners:{
					select:function(combo, record,index){
						citiesDs.loadData([],false);
						Ext.getCmp('citiesDsId').reset();
						districtsDs.loadData([],false);
						Ext.getCmp('districtsDsId').reset();
						citiesDs.loadData(eval("json.cities."+record.get('value')),false);
					}
				}
			},{
				xtype:'combo',
				id:'citiesDsId',
				store:citiesDs,
				triggerAction : 'all',// 显示所有下列数据,一定要设置属性triggerAction为all 
				fieldLabel: '请选择省份',
				allowBlank : false,//不允许为空 
				blankText:'请选择',
				valueField : 'value',//值 
				displayField : 'name',//显示文本 
				readOnly : true,//是否只读
				emptyText : '请选择',
				editable: false,//是否允许输入 
				mode: 'local',
				listeners:{
					select:function(combo, record,index){
						districtsDs.loadData([],false);
						Ext.getCmp('districtsDsId').reset();
						districtsDs.loadData(eval("json.districts."+record.get('value')),false);
					}
				}
			},{
				xtype:'combo',
				fieldLabel: '请选择地区',
				id:'districtsDsId',
				store:districtsDs,
				triggerAction : 'all',// 显示所有下列数据,一定要设置属性triggerAction为all 
				allowBlank : false,//不允许为空 
				blankText:'请选择',
				valueField : 'value',//值 
				displayField : 'name',//显示文本 
				readOnly : true,//是否只读
				emptyText : '请选择',
				editable: false,//是否允许输入 
				mode: 'local'
			}]
		});
	}
});

 

 

 

这上面就是实现了本地数据化的级连。呵呵希望对你有帮助了。呵呵

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值