ExtJS - 在输入/模糊时忽略forceSelection标志的标记字段

时间:2016-04-05 17:02:37

标签: extjs

我正在使用Ext.form.field.Tag组件。我已经配置了

createNewOnEnter:true,
createNewOnBlur:true, 
forceSelection:true

但如果我输入的值不是下拉列表中的值/存储记录和制表符输出或单击输入,则选择值。我想要在输入/模糊时选择值,如果它存在于下拉列表中。但是当createNewOnEnter和createNewOnBlur设置为true时,forceSelection将变为false。我通过在“change”事件处理程序中设置调试器来验证这一点。

我没有小提琴,但您可以将以上配置复制粘贴到API文档中的实时编辑器here

感谢

1 个答案:

答案 0 :(得分:0)

有些配置彼此不兼容,并且ExtJS没有提供所有可想到的组件配置(虽然他们尝试,但是,Tagfield是相当新的)。这是表单/ field / Tag.js文件的相关部分,用于解释您的体验:

if (me.createNewOnEnter || me.createNewOnBlur) {
    me.forceSelection = false;
}

要获得所需内容,您必须覆盖标记字段定义的某些部分以满足您的需要。您应该考虑覆盖assertValueonKeyUp函数。