限制用户输入超过 maxLength extjs Combobox
Restrict the user to type more than maxLength extjs Combobox
我有一个带有 tpl 的组合框,我想限制用户不要键入超过 8 个字符。我怎样才能实现它,因为组合框没有 enforceMaxLength 和 maxLength 只提供工具提示,但允许用户键入超过 maxLength 的字符。
https://fiddle.sencha.com/#view/editor&fiddle/1vam
Ext.form.field.ComboBox
derives from Ext.form.field.Text
,因此对于 textfield
上可用的所有配置选项,您可以检查 combobox
是否真的必须以中断的方式覆盖它们,或者它们是否仍在工作.即使不是组合框文档的一部分,它们中的大部分(如果不是全部)应该仍然可用。
正如用户 chrisuae 在评论中指出的那样,enforceMaxLength
仍在 combobox
中工作。这是因为 combobox
没有删除完整可用的 maxLength 所需的任何两个部分,Ext.form.field.Base.fieldSubTpl
or Ext.form.field.Text.getSubTplData
.
你可能会发现在combobox
源代码中getSubTplData
被覆盖了,但是data = me.callParent([fieldData]);
行意味着仍然执行原始代码
我有一个带有 tpl 的组合框,我想限制用户不要键入超过 8 个字符。我怎样才能实现它,因为组合框没有 enforceMaxLength 和 maxLength 只提供工具提示,但允许用户键入超过 maxLength 的字符。 https://fiddle.sencha.com/#view/editor&fiddle/1vam
Ext.form.field.ComboBox
derives from Ext.form.field.Text
,因此对于 textfield
上可用的所有配置选项,您可以检查 combobox
是否真的必须以中断的方式覆盖它们,或者它们是否仍在工作.即使不是组合框文档的一部分,它们中的大部分(如果不是全部)应该仍然可用。
正如用户 chrisuae 在评论中指出的那样,enforceMaxLength
仍在 combobox
中工作。这是因为 combobox
没有删除完整可用的 maxLength 所需的任何两个部分,Ext.form.field.Base.fieldSubTpl
or Ext.form.field.Text.getSubTplData
.
你可能会发现在combobox
源代码中getSubTplData
被覆盖了,但是data = me.callParent([fieldData]);
行意味着仍然执行原始代码