Extjs4 Grid 使用總結

1、拖拽列 隱藏列自動存入cookie 

            Ext.state.Manager.setProvider(Ext.create('Ext.state.CookieProvider'));

2、動態加載

Ext.require([

                'Ext.grid.*',

                'Ext.data.*',

                'Ext.selection.*',

                'Ext.PagingToolbar'

            ]);

3、store(注意註釋的部分)

var store = Ext.create('Ext.data.Store', {

                model: 'ThisSys',

                pageSize: 10, // 分頁大小

//remoteSort: true, //後臺排序

                proxy: {

                    type: 'ajax',

                    url: '<%=Url.Action("GetList","ThisSys") %>',

                    actionMethods: { read: 'POST' }, //將提交方式改爲post

                    reader: {

type: 'json',

                        root: 'rows',

                        totalProperty: 'results'
                    }

                },

                sorters: [{ //排序

                    property: 'Code',

                    direction: 'ASC'//'DESC'

                }],

                autoLoad: true

});

4、Grid中在每一列的前面加一個單選框

selModel: Ext.create('Ext.selection.CheckboxModel'),

5、Grid中增加索引列

columns: [

                   Ext.create('Ext.grid.RowNumberer'), //索引列

   {header: '編號', sortable: true, dataIndex: 'ID', hidden: true },

                   { header: '名稱', sortable: true, dataIndex: 'Name' }],

6、Grid中實現分頁(注意如果store中沒有指定分頁大小,則只能顯示當前頁的數據)

bbar: new Ext.PagingToolbar({
                    pageSize: 10,
                    store: store,       //將分頁工具條與Ext.data.Store關聯,從而共享數據模型 
                    displayInfo: true,
                    displayMsg: "顯示第 {0} - {1}條記錄,共 {2} 條記錄",
                    emptyMsg: "沒有記錄"
                })

7、查詢Grid

            Ext.get('Btn_search').on('click', function () {
                var search_store = grid.getStore();
                search_store.on('beforeload', function (store, options) {
                    var search_params = { search_cName: Ext.get('txt_Name').getValue() };
                    Ext.apply(store.proxy.extraParams, search_params); //增加新的參數
                });
                search_store.load({ params: { start: 0, limit: 10} }); //重新加載數據
            });

8、Grid行單擊

grid.addListener('itemclick', function (grid, rowindex, e) {
                var selectModel = grid.getSelectionModel().getLastSelected(); //最後選中的行
                Id = selectModel.data.ID; //選中行的ID
            });



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章