簡體   English   中英

如何刷新/重新加載網格

[英]How to refresh / reload Grid

嗨,這是我的代碼,我試圖單擊工具欄上的“刷新”按鈕來刷新網格面板,但是它將無法正常工作,或者什么也不會發生,請您幫助我,正確的語法是什么?

var store = new Ext.data.JsonStore({
    url: 'data-cloud.php',
    fields: [{
        name: 'userid'
    }, {
        name: 'record_name'
    }, {
        name: 'search_term',
        type: 'string'
    }]
});

var grid_array = new Array();
store.load({
    params: {
        start: 0,
        limit: 5
    }
});

store.on('load', function(store, records) {
    for (var j = 0; j < records.length; j++) {
        grid_array[j] = records[j].get('record_name');
    }
});

// create the Grid
var datagrid = new Ext.grid.GridPanel({
    store: store,
    columns: [{
        id: 'id',
        header: 'Cloud Name',
        width: 155,
        renderer: record_name,
        sortable: true,
        dataIndex: 'record_name'
    }, {
        header: 'Search Term',
        width: 150,
        sortable: true,
        dataIndex: 'search_term'
    }],
    stripeRows: true,
    height: 250,
    width: 500,
    id: 'cloud_panel',
    title: 'DB Grid',
    id: 'detailPanel',
    tbar: [{
            text: 'Refresh',
            iconCls: 'new-topic',
            handler: function() {
                Ext.getCmp('detailPanel').getView().refresh();
            }
        }

    ],
    bbar: new Ext.PagingToolbar({
        pageSize: 5,
        store: store,
        displayInfo: true,
        displayMsg: 'Displaying topics {0} - {1} of {2}',
        emptyMsg: "No topics to display"
    })
});
var grid = Ext.getCmp('cloud_panel');
...
tbar: [
   handler: function() {
       grid.load();
   }
]

如果刷新網格的視圖,則不會再次加載數據,它只會重新呈現演示文稿。

要刷新實際數據,請使用網格存儲上的重載功能:

Ext.getCmp('detailPanel').getStore().reload();

順便說一句,您在網格的配置中兩次設置了id屬性“ cloud_panel”和“ detailPanel”,因此您可能要消除其中之一。

嘗試

var grid = Ext.getCmp('cloud_panel');
grid.getStore().load();

你也可以通過參數來存儲

grid.getStore().getProxy().extraParams = {name:'name1', lname: 'lname'}

之后

grid.getStore().load(function(){
    alert('store was loaded');
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM