如何在 ExtJS6 中扩展组合框的焦点?
How to expand combobox on focus in ExtJS6?
我正在尝试展开焦点上的可编辑组合框:
{
queryMode: 'local',
triggerAction: 'all',
forceSelection: true,
editable: true,
anyMatch: true,
valueField: 'id',
displayField: 'name',
store: store,
listeners: {
focus: function(){
this.expand();
}
},
}
当您单击未聚焦组合的实际触发器时,此方法效果不佳 - 它会立即打开和关闭它。
有趣的是 tagfield
默认输入具有我正在尝试模拟的行为,也许我缺少一个选项。
您可以在侦听器中查看展开状态:
if (!this.isExpanded) {
this.expand();
}
这就是我最终所做的,它比焦点方法有一个优势,即每次点击都可以扩展组合,而不仅仅是第一次点击。
listeners: {
render: function(el){
el.getEl().down('input').on({
scope: el,
click: function(){
if(!this.isExpanded) {
this.expand();
}
},
});
},
}
我正在尝试展开焦点上的可编辑组合框:
{
queryMode: 'local',
triggerAction: 'all',
forceSelection: true,
editable: true,
anyMatch: true,
valueField: 'id',
displayField: 'name',
store: store,
listeners: {
focus: function(){
this.expand();
}
},
}
当您单击未聚焦组合的实际触发器时,此方法效果不佳 - 它会立即打开和关闭它。
有趣的是 tagfield
默认输入具有我正在尝试模拟的行为,也许我缺少一个选项。
您可以在侦听器中查看展开状态:
if (!this.isExpanded) {
this.expand();
}
这就是我最终所做的,它比焦点方法有一个优势,即每次点击都可以扩展组合,而不仅仅是第一次点击。
listeners: {
render: function(el){
el.getEl().down('input').on({
scope: el,
click: function(){
if(!this.isExpanded) {
this.expand();
}
},
});
},
}