【发布时间】:2012-01-16 17:40:42
【问题描述】:
我有 2 个组合框。第一个选择一个类别,第二个选择子类别。这两个类别都存储在一个存储中,其中包含以下字段:id、parentId、label。过滤商店不起作用,因为两个组合框都绑定到同一个商店。
如何链接组合框?如何过滤第二个组合框的列表?
【问题讨论】:
-
您商店的数据是内联的还是从服务器加载的?
标签: javascript extjs combobox extjs4 store
我有 2 个组合框。第一个选择一个类别,第二个选择子类别。这两个类别都存储在一个存储中,其中包含以下字段:id、parentId、label。过滤商店不起作用,因为两个组合框都绑定到同一个商店。
如何链接组合框?如何过滤第二个组合框的列表?
【问题讨论】:
标签: javascript extjs combobox extjs4 store
使用 Ext.create() 为第二个组合框创建同一存储的新实例,而不是引用同一个商店。使用组合框上的选择或更改侦听器触发从一个到另一个的过滤。
编辑: 这是这种野兽的一个例子:) http://extjs.wima.co.uk/example/1 这不是我的,但听起来正是你在做什么。请注意为每个组合框设置商店的方式。第一个 Combo 使用新运营商创建新商店 - 尽管这不是最佳实践,但它会起作用。最佳实践就是使用 Ext.create(..)。
第二个 Combo 指的是现有商店。在您的情况下,因为您要重用相同的商店定义,所以您想在两个 Combos 上使用 Ext.create(...) 。
更多关于类系统最佳实践的参考请阅读本指南:http://docs.sencha.com/ext-js/4-0/#!/guide/class_system
【讨论】:
朋友.....在商店试试 filter。
【讨论】: