Extjs 版本ext-4.0.2a
本人在做下拉框绑定store的时候,有两种情况产生
一是联动的时候第二个下拉框会去请求后台出来个状态小圈,结果什么值也没取得。
二是下拉框debug的时候点击下拉框请求了两遍后台。
产生原因是Extjs4默认取得数据集是请求绑定的store的url,而联动或者显示的时候我们一般是先加载好了store,这样就出现重复请求的状况发生,而联动的时候点击第二个下拉框他会请求store而不是加载已经加载好的store。
我们只要设置queryMode:'local'下拉框就会请求本地已经加载好的store。
注意在Extjs3中的设置是mode: 'local',Extjs3以前做过的东西copy过来都不好用很郁闷。
小宝制造。
本人在做下拉框绑定store的时候,有两种情况产生
一是联动的时候第二个下拉框会去请求后台出来个状态小圈,结果什么值也没取得。
二是下拉框debug的时候点击下拉框请求了两遍后台。
产生原因是Extjs4默认取得数据集是请求绑定的store的url,而联动或者显示的时候我们一般是先加载好了store,这样就出现重复请求的状况发生,而联动的时候点击第二个下拉框他会请求store而不是加载已经加载好的store。
我们只要设置queryMode:'local'下拉框就会请求本地已经加载好的store。
{
id: 'template_code',
fieldLabel: '模板',
xtype: 'combo',
name: 'template_code',
store: templatestore,
valueField: 'template_code',
displayField: 'template_name',
emptyText: '选择状态...',
queryMode:'local', //请求本地加载好的store,不发送后台请求
selectOnFocus: true,
forceSelection: true,
editable: false,
allowBlank: false,
listeners: {
change: function(){
//取得下拉框显示的名赋值给另一个元素
Ext.getCmp("template_name").setValue(Ext.getCmp("template_code").getRawValue());
}
}
}
注意在Extjs3中的设置是mode: 'local',Extjs3以前做过的东西copy过来都不好用很郁闷。
小宝制造。