3

我有两个要求来绑定 EXT Js 组合

-- 组合中的第一个项目应具有固定文本,例如“未过滤”

-- 之后我需要将数据存储绑定到上述组合。数据存储已重复 columnA 值,因此如何过滤数据存储,以便在绑定组合之前在 columnA 中具有不同的行。

笔记:

我也在使用数据存储来绑定网格面板,我不想创建另一个对数据库的调用。这就是为什么我正在寻找一种解决方案来通过 Ext Js 数据存储过滤数据的原因。

我的示例代码如下

extManager1.comboFilter = new Ext.form.ComboBox({
                  editable: false
                , id: 'BaseTemplate'
                , fieldLabel: 'Base Templates'
                , name: 'BaseTemplate'
                , editable: false
                , store: extManager1.GetTemplateDetails
                , displayField:'FilterBy'
                , valueField: 'value'
                , mode: 'local'
                , boxLabel: 'BaseTemplate'
                , typeAhead: true
                , triggerAction: 'all'
                , forceSelection: true
                , selectOnFocus: true
                , emptyText:'Unfilterd'
                ,listeners:{select:{fn:function(combo, value) { 

                //This code filters the grid panel data by selected combo value
                Ext.getCmp('TemplateGridPanel').store.filter('productdisplayheading', combo.getValue());               

                }}

                }

    });
4

1 回答 1

2

您可能需要使用您需要的内容创建另一个商店对象。但是无需再次从数据库中获取数据 - 您可以使用商店中的数据填充新extManager1.GetTemplateDetails商店。看一下ExtJS Store 的 collect 方法——它可以用来从现有的 store 中获取不同的值。

于 2011-04-11T05:09:49.063 回答