【问题标题】:extjs combobox display field with remote store带有远程存储的 extjs 组合框显示字段
【发布时间】:2016-11-17 06:11:32
【问题描述】:

我在表单中有一个组合框。 组合框有一个远程存储(带有分页)作为其庞大的数据集。

组合框的值将由表单使用form.setValues() 设置。 此时,组合框的存储尚未加载。

现在,如何显示组合框的值,使用表单设置的值加载商店。

有没有办法让商店自动加载,并将设置值作为过滤器? (类似于过滤更改)

或者

我是否必须手动监听变化并触发它? (这我无法实现,因为我最终陷入混乱,试图设置值并处理不同的事件。)

【问题讨论】:

  • 你用的是什么版本的extjs?如果是 extjs 5 或更高版本,您可以使用数据绑定,并将过滤器的值绑定到表单中数据字段的值

标签: extjs combobox


【解决方案1】:

据我所知(但我可能是错的),组合框和分页不能一起工作,因为您无法在组合框中的页面之间切换,并且组合框无法过滤客户端,因为过滤器无法应用于尚未加载的页面。

您可能希望删除分页并将远程过滤添加到存储中。然后下拉菜单应根据组合中设置的值进行过滤。如果我是你,我还会定义用户在组合中显示任何内容之前必须输入的最小长度(例如 3),然后在商店中添加一个 beforeload 事件,检查组合值的长度是否为3 个或更多。

【讨论】:

  • 已经有分页,它工作正常。我的情况是:当组合字段的值由封闭表单设置时,组合将没有显示值,因为它必须查询服务器以获取相关记录。为此目的有一个“autoLoadOnValue”配置 - 但这个解决方案只是半生不熟。
猜你喜欢
  • 1970-01-01
  • 2013-04-24
  • 2015-03-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-07-03
  • 2011-08-17
相关资源
最近更新 更多