1

FILTER特定の基準に基づいてグリッドを作成する必要があります。

例えば; 3 つのフィールドがある場合、Name,age,school. ageグリッドに10 を含むすべての学生が表示されるように、グリッドをローカルでフィルター処理する必要があります。

を使用すればこれが達成可能であると読みましたExt.data.ArrayStore。しかし、これを私のコードに適用する方法がわかりません。私の Store クラスは次のようになります。

Ext.define('Project.store.Person',{
    extend:'Ext.data.Store',
    model:'App.model.Person',   
    proxy: {
        type: 'ajax',
        url : '/person.php'
    }
});

私のモデル;

Ext.define ('Project.model.Person',{
    extend: 'Ext.data.Model',   
    fields:['name','age','school']
});

Ext.data.ArrayStore列をローカルでフィルタリングするために、どのように適用できますか。の学年であるすべての学生を表示し10ますage

**UPDATE**

グリッドビュー

this.columns = [
    {
{ text: "Size", dataIndex: 'size' ,filter: {
            type: 'list',
            options: ['small', 'medium', 'extra large']

        } }, ...

お店

Ext.define('SerenExample.store.GridFilterExample',{
    extend:'Ext.data.Store',
    model:'App.model.GridFilterExample',
    remoteFilter: false,
    remoteGroup:true,
    proxy: { ...

尊重された列をクリックしても、フィルターを示すチェックボックスが表示されません

アップデート

Ext.define('SerenExample.view.GridFilterExample' ,{
extend: 'Ext.grid.Panel',
alias : 'widget.gridfilt',
features: [],
    initComponent: function() {
        this.store = 'GridFilterExample';

        this.columns = [
    {
    ...

更新 2

GET http://localhost/SerenExample/feature/filters.js?_dc=1341677311248 404 Not Found 104ms
"NetworkError: 404 Not Found - http://localhost/SerenExample/feature/filters.js?_dc=1341677311248"

Ext.define('SerenExample.view.GridFilterExample' ,{
extend: 'Ext.grid.Panel',
alias : 'widget.gridfilt',
features: [  {ftype: 'filters',
            autoReload: false,
            local: true,                
            filters: [{
                type: 'list',
                dataIndex: 'status',
                            options: ['small', 'medium', 'extra large']
            }]}],
    initComponent: function() {
        this.store = 'GridFilterExample';

        this.columns = [
    {
4

1 に答える 1

1

を使用する必要はありませんArrayStore。ストア定義で指定remoteFilter: falseし、フィルターを適用するだけです。ローカルで行われます。

于 2012-07-06T19:47:05.717 に答える