我有一个带有tpl的组合框我想限制用户不要输入超过8个字符。我如何实现它,因为组合框没有enforceMaxLength,maxLength只提供工具提示但允许用户输入的字符多于maxLength。 https://fiddle.sencha.com/#view/editor&fiddle/1vam
答案 0 :(得分:3)
Ext.form.field.ComboBox
派生自Ext.form.field.Text
,因此对于textfield
上提供的所有配置选项,您可以检查combobox
是否真的必须以破解方式覆盖它们,或者他们是否还在工作即使不是全部,大多数都应该仍然可用,即使它们不是组合框文档的一部分。
正如用户chrisuae已在评论中指出的那样,enforceMaxLength
仍然在combobox
中工作。这是因为combobox
没有删除任何完整的maxLength可用的部分,Ext.form.field.Base.fieldSubTpl
或Ext.form.field.Text.getSubTplData
。
您可以在combobox
源代码中找到getSubTplData
已被覆盖,但行data = me.callParent([fieldData]);
表示原始代码仍在执行。