2017-10-26 14 views
0

プロパティグリッドで並べ替えを有効にする方法を探しています。私はいくつかの場所でいくつかの "sortable"と "defaultSortable"をtrueに設定しようとしましたが、何も起こりません。 通常、ExtJSでsortableがデフォルトであり、なぜそれが私にとってうまくいかないのですか?ExtJSで並べ替えを有効にするには?

columns: [ 

     { header: 'Sample Name', dataIndex: 'sample_name',flex: 1,sortable: true, 
      editor: { 
       allowBlank: true 
      } }, 
     { header: 'Sample Type', dataIndex: 'sample_type',flex: 1,sortable: true, 
      editor: { 
       allowBlank: false 
      } }, 
     { header: 'Text Code', dataIndex: 'text_code',flex: 1,sortable: true, 
      editor: { 
       allowBlank: false 
      } }, 
] 
+0

一緒にフィドルを置きます。 –

+0

[グリッド](https://docs.sencha.com/extjs/4.2.6/#!/api/Ext.grid.Panel)にはデフォルトソートがあり、プロパティを適用する必要はありません。あなたは私の[sencha fiddle](https://fiddle.sencha.com/#view/editor&fiddle/28te)でここにいることができます。 [sortableColumns](https://docs.sencha.com/extjs/4.2.6/#!/api/Ext.grid.Panel)プロパティを試しましたか? –

+0

はい、私はそれがデフォルトのソートプロパティを持っていることを知っていますが、なぜ私のために働いているのかわかりません。 –

答えて

1

Ext.grid.Panelを使用する必要があります。デフォルトのsortableColumnsによって が真である、documentation

はフィドルにこのコードを試してみてください参照してください。

Ext.application({ 
    name : 'Fiddle', 

    launch : function() { 
     Ext.create('Ext.data.Store', { 
      storeId:'simpsonsStore', 
      fields:['name', 'email', 'phone'], 
      data:{'items':[ 
       { 'name': 'Lisa', "email":"[email protected]", "phone":"555-111-1224" }, 
       { 'name': 'Bart', "email":"[email protected]", "phone":"555-222-1234" }, 
       { 'name': 'Homer', "email":"[email protected]", "phone":"555-222-1244" }, 
       { 'name': 'Marge', "email":"[email protected]", "phone":"555-222-1254" } 
      ]}, 
      proxy: { 
       type: 'memory', 
       reader: { 
        type: 'json', 
        root: 'items' 
       } 
      } 
     }); 

     Ext.create('Ext.grid.Panel', { 
      title: 'Simpsons', 
      store: Ext.data.StoreManager.lookup('simpsonsStore'), 
      columns: [ 
       { text: 'Name', dataIndex: 'name' }, 
       { text: 'Email', dataIndex: 'email', flex: 1 }, 
       { text: 'Phone', dataIndex: 'phone' } 
      ], 
      height: 200, 
      width: 400, 
      renderTo: Ext.getBody() 
     }); 
    } 
}); 
関連する問題