extjs - 限制用户输入超过 maxLength extjs Combobox

标签 extjs combobox extjs4 extjs5 extjs6

我有一个带有 tpl 的组合框,我想限制用户不要输入超过 8 个字符。我怎样才能实现它,因为组合框没有enforceMaxLength,而maxLength只提供工具提示,但允许用户输入超过maxLength的字符。 https://fiddle.sencha.com/#view/editor&fiddle/1vam

最佳答案

Ext.form.field.ComboBox源自Ext.form.field.Text ,因此对于 textfield 上可用的所有配置选项,您可以检查 combobox 是否确实必须以破坏性方式覆盖它们,或者它们是否仍在工作。其中大多数(如果不是全部)应该仍然可用,即使不是组合框文档的一部分。

正如用户 chrisuae 在评论中指出的那样,enforceMaxLength 仍在 combobox 中工作。这是因为 combobox 不会删除 maxLength 可用所需的两个完整部分中的任何一个,Ext.form.field.Base.fieldSubTplExt.form.field.Text.getSubTplData .

您可能会在combobox源代码中发现getSubTplData已被覆盖,但 data = me.callParent([fieldData]); 行表示仍执行原始代码。

关于extjs - 限制用户输入超过 maxLength extjs Combobox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43879739/

相关文章:

javascript - 自动获取 extJS tagfield 中的下拉菜单

WPF:ComboBox DisplayMemberPath 突然不再显示了?

javascript - ExtJs 4.2 - 取消/清除组件的动画链

javascript - 返回数组中存储的字段的数据

ruby-on-rails - 有人在生产中使用 Netzke 吗?

Javascript 单页应用程序变得非常难以使用

javascript - 如何正确访问 Sencha 模型的属性?

c# - 在显示之前更改组合框的 SelectedValue

combobox - 根据某些值隐藏 Kendo UI 组合框选项

javascript - ExtJS 4.0 的颜色字段