【问题标题】:ExtJs - How to clear the existing value in editable combobox when user starts typing a new valueExtJs - 当用户开始输入新值时如何清除可编辑组合框中的现有值
【发布时间】:2014-06-18 16:04:03
【问题描述】:

我有一个可编辑的组合框。此组合框中将有一个默认值或用户从下拉列表中选择它的现有值。现在,如果用户想在此组合框中输入新值,我希望在用户第一次按键时清除现有值。现在我必须手动选择现有值并将其删除,然后开始输入新值。有没有办法处理这个问题,一旦用户开始在组合框中输入一个值,旧值就应该被清除掉。

谢谢,

【问题讨论】:

  • 我可以说你所描述的似乎不正统吗?用户会在某处看到一个光标,当他输入某些内容时,您会删除它并以某种方式再次添加他写的内容?他可以按箭头或复制粘贴或选择某些部分来仅更改结尾...我认为如果您使用 ExtJS 的emptyText,您会提供更好的用户体验,更熟悉。如果你愿意,你可以把它设计得不要太灰。当您需要该值时,只需执行getValue() || mydefaultvalue。如果不想重复,甚至可以直接从initialConfig.emptyText 阅读。

标签: extjs combobox type-ahead


【解决方案1】:
 1. You can do it by using **focus** event listener for combo
 listeners:{
    focus:function( combo, The, eOpts ){
             combo.clearValue();
           }

  }
 2. You can use **keypress/keyup** event listeners also depending

通过使用 enableKeyEvents :true 为组合启用关键事件来满足您的要求。

 listeners:{
    keypress:function( combo, e, eOpts ){
             combo.clearValue();
           }

  }

【讨论】:

  • 感谢您的快速回复。我会试一试,然后告诉你。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-12-13
  • 1970-01-01
  • 1970-01-01
  • 2021-02-05
相关资源
最近更新 更多