我正在处理一个简单的网格表单,它有一个组合框和数据源作为代理(如http://goo.gl/2fxP8)。组合框正确加载,但当我尝试选择其中一个列表项时,网格关闭,组合框不关闭。任何人都可以帮助我吗?
我计划扩展组合框onselect功能,这样一旦选择了列表项,其他字段将被动态加载。
searchField = new Ext.form.ComboBox({
store: ds,
name : 'search',
id:'search',
fieldLabel : 'Search',
displayField:'title',
typeAhead: false,
loadingText: 'Searching...',
pageSize:10,
minChars:2,
triggerAction: 'all',
width: 200,
tpl: resTpl,
itemSelector: 'div.search-item',
onSelect: function(record){
/* Set Values to other fields here */
}
}),
保存代码是:
Ext.Ajax.request
({
url:"some url",
scope:this,
params:
{
},
success: function(objServerResponse)
{
eval("var resultSet = " +objServerResponse.responseText);
if(resultSet.isOk)
{
this.collapse();
}
else
{
}
}
});
答案 0 :(得分:0)
我认为问题是你已经超越onSelect
功能..
看看here(尝试查找onSelect
),onSelect
方法是私有的...
正如您所看到的,在onSelect
内部默认调用collapse
函数。
所以,如果你在onSelect
以上..你的组合永远不会崩溃..
你必须手动完成..就像kiran所说的那样......
我的问题是,你为什么要覆盖onSelect
函数?..
如果你需要做什么当选择组合时,你为什么不把它设置为听众?
尝试更改您的代码:
onSelect: function(record){
/* Set Values to other fields here */
}
这一个:
listeners : {
"select" : function(combo,data,idx){
console.info(data);
}
}