extjs 怎么改变 Ext.data.HttpProxy中的 url的路径?
我现在写了一个俩个下拉框一边是类型一边是值在选择类型后这边的值会改变现在就是不知道extjs怎么修改moduleStore=newExt.data.AjaxStore({...
我现在写了一个俩个下拉框 一边是类型 一边是值 在选择类型后 这边的值会改变 现在就是不知道 extjs怎么 修改 moduleStore = new Ext.data.AjaxStore({
proxy: new Ext.data.HttpProxy({
url: '../../user/modelerUserChose' //这个是url,就是你要取的值到下拉框中的
}),
reader: new Ext.data.JsonReader({
root: 'root',
fields: ['text','value'] //跟后面的ComboBox的displayField和valueField对于
})
}); 中 url的 路径 展开
proxy: new Ext.data.HttpProxy({
url: '../../user/modelerUserChose' //这个是url,就是你要取的值到下拉框中的
}),
reader: new Ext.data.JsonReader({
root: 'root',
fields: ['text','value'] //跟后面的ComboBox的displayField和valueField对于
})
}); 中 url的 路径 展开
1个回答
展开全部
在第一个下拉框中加监听如:{
xtype: 'combobox',
name: 'variable',
id:'codeCombo',
store:states,
// editable:false,
displayField: 'basedata_name',
valueField: 'basedata_code',
fieldLabel: '选择代码集',
labelWidth: 100,
flex:1,
triggerAction : 'all',
selectOnFocus : true,
forceSelection : true,
queryMode: 'local',
listeners :{
'select' : function(combo, record, index){
var combox1 = Ext.getCmp('sourceComb');
combox1.clearValue();
combox1.store.load({params:{params1:this.value}});
}
}
}
当第一个下拉框选择的时候出发,去reload第二个下拉框的store,将第一个下拉框的值作为参数传给第二个下拉框,这就是一个二级联动,同理做省、市、区三级联动也是这个原理,希望对你有帮助
xtype: 'combobox',
name: 'variable',
id:'codeCombo',
store:states,
// editable:false,
displayField: 'basedata_name',
valueField: 'basedata_code',
fieldLabel: '选择代码集',
labelWidth: 100,
flex:1,
triggerAction : 'all',
selectOnFocus : true,
forceSelection : true,
queryMode: 'local',
listeners :{
'select' : function(combo, record, index){
var combox1 = Ext.getCmp('sourceComb');
combox1.clearValue();
combox1.store.load({params:{params1:this.value}});
}
}
}
当第一个下拉框选择的时候出发,去reload第二个下拉框的store,将第一个下拉框的值作为参数传给第二个下拉框,这就是一个二级联动,同理做省、市、区三级联动也是这个原理,希望对你有帮助
追答
你不必每次都去创建store,你可以在cobobox外面定义cobobox的store,然后在select时,去重新load或者reload他的store,记得带参数,你要学会js的调试,建议用谷歌或者火狐浏览器,按f12找到控制台(console),这样可以定位到自己的错误
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询