我有一个extjs 4.2组合框,我用它来显示一些数据。现在我尝试根据条件组合将显示默认值。我设法根据该条件返回所需的数据,但是我没有在组合框中设置必要的值。我该如何设置该特定值?
组合:
var locationStore = Ext.create('Ext.data.Store', {
model: 'model_LOCATION',
proxy: {
type: 'ajax',
url: 'Record?DB=GEO&Table=LOCATION',
reader: {
type: 'xml',
record:'record'
}
},
autoLoad:true
});
var C_LOCATION= Ext.create('Ext.form.ComboBox', {
name : 'C_LOCATION',
id : '${DB}.${Table}.C_LOCATION',
store : locationStore,
queryMode : 'local',
displayField : 'display',
valueField : 'value',
});
AJAX电话:
var data;
var code = 111;
data = "CODE ='" + code + "'";
var text;
$.ajax({
type: "POST",
url: "Record?DB=GEO&Table=LOCATION",
dataType: 'xml',
data: {
"Where": data
},
success: function(xml) {
text = xml;
Ext.getCmp('${DB}.GEO.LOCATION').setValue(text);
}
});
答案 0 :(得分:0)
在配置部分(reference: 'comboBox'
)中为组合框指定引用。然后在您获得特定值的函数中调用comboBox.setValue(defaultValueGoesHere)
。您可能需要根据自己的位置搜索comboBox引用。
答案 1 :(得分:-1)
我猜你必须解析你的XML响应。与您在locationStore的代码定义中类似,您可以在其中指定xml响应中的记录。
为什么要进行第二次ajax通话? 你能否根据CODE值过滤locationStore?