ExtJS 4.1.x - 里面有一个组合框的选择器
Posted
技术标签:
【中文标题】ExtJS 4.1.x - 里面有一个组合框的选择器【英文标题】:ExtJS 4.1.x - Picker with a Combobox inside 【发布时间】:2013-02-07 18:34:30 【问题描述】:我有一个自定义选择器类,其中包含一些文本字段和一个组合框。应用程序中的网格使用此选择器作为列的编辑器,但问题是每当我单击组合框时,选择器都会失去焦点并关闭。有没有办法修改选择器以使用组合框来选择数据?
【问题讨论】:
如果可能,请分享代码 使用“CD”的解决方法,jsfiddle.net/8E85C 【参考方案1】:我使用collapseIf
函数找到了解决此问题的方法。
此代码检查事件目标是否为BoundList
(内部使用DataView
表示ComboBox
)和选择器组件的一部分:
collapseIf: Ext.Function.createInterceptor(Ext.form.field.Picker.prototype.collapseIf, function (e)
var boundList = Ext.get(e.target).up('.x-boundlist'),
cmp;
cmp = boundList && Ext.getCmp(boundList.id);
if (cmp && this.picker.down('#' + cmp.pickerField.id))
return false;
)
【讨论】:
有一个 mousedown 处理程序附加到一个名为“mimicBlur”的函数,该函数还将选择器隐藏在“triggerBlur”中。所以我认为它想将您的解决方法添加到mimicBlur 和collapseIf 方法中。 参考这个:sencha.com/forum/…以上是关于ExtJS 4.1.x - 里面有一个组合框的选择器的主要内容,如果未能解决你的问题,请参考以下文章