Ext JS 4.2.2中的实时搜索组合

时间:2013-10-30 12:50:44

标签: extjs4.2

我正在尝试实施实时搜索组合。它假设像这样工作: 当我在组合字段中输入一个字符时,我读取当前值并将其作为参数发送到商店的URL。在后端,该参数用于从包含它的数据库中返回任何值,因此组合后面的存储仅填充那些过滤的值。 当我继续在组合中输入字符时,应该更新参数并将其再次发送到后端,依此类推,就像这样一个越来越小的商店。 我尝试使用组合的事件按键,甚至键盘来实现这种行为,但问题是我无法访问组合字段中的当前值。 例如,当我在组合中输入“for”字符串时,如何使用组合对象获取此值? comboName.getValue()不起作用,它不返回任何内容“”。

我已经看到了这里的实时组合示例:http://docs.sencha.com/extjs/4.2.2/#!/example/form/forum-search.html但根本没有帮助我。

所以我的一个大问题是:如何在编辑组合字段的同时获得当前值?

任何帮助都将不胜感激,谢谢。

2 个答案:

答案 0 :(得分:0)

你应该可以使用

comboName.getValue();

comboName.getRawValue();

comboName是你的组合框。既不工作 - 我在你的帖子中注明你说getValues()这是一种不正确的方法。您可能还想检查当您引用组合框对象时,该引用实际上是否正确。关键事件的第一个参数实际上是对象本身,所以你应该能够做到,例如

listeners:{
  keyup:function(comboBox){
      var value = comboBox.getValue() || comboBox.getRawValue();
      console.log(value);
  }
}

根据需要更换值获取方法。

答案 1 :(得分:0)

我发现组合已经有了快速搜索行为,我只需要在'remote'和其他一些小配置上设置queryMode。更多细节在这里: Ext Js 4.2.2 combobox queryMode