Extjs - 从服务器获取更多信息

时间:2010-05-29 04:57:23

标签: javascript json extjs

是否可以从服务器获取每个数据?

例如,我想通过发送Ajax/Proxy字符串来通过json从服务器获取列项目?

var grid = new Ext.grid.GridPanel({
    store: store,
    columns: [{
        id: 'company',
        header: 'Company',
        width: 160,
        sortable: true,
        dataIndex: 'company'
    }, {
        header: 'Price',
        width: 75,
        sortable: true,
        renderer: 'usMoney',
        dataIndex: 'price'
    }, {
        header: 'Change',
        width: 75,
        sortable: true,
        renderer: change,
        dataIndex: 'change'
    }, {
        header: '% Change',
        width: 75,
        sortable: true,
        renderer: pctChange,
        dataIndex: 'pctChange'
    }, {
        header: 'Last Updated',
        width: 85,
        sortable: true,
        renderer: Ext.util.Format.dateRenderer('m/d/Y'),
        dataIndex: 'lastChange'
    }],
    stripeRows: true,
    autoExpandColumn: 'company',
    height: 350,
    width: 600,
    title: 'Array Grid',
    stateful: true,
    stateId: 'grid'
});

2 个答案:

答案 0 :(得分:0)

是的,你可以。

您可以在服务器生成的示例中获取整个代码并在客户端上进行eval'd,或者您可以获得作为JSON对象返回的列数组,由客户端解析,然后使用创建对象作为创建网格的代码中的“columns”配置选项。

由于解释了JavaScript并且您可以从服务器下载文本,因此您可以执行任何此类技巧。

答案 1 :(得分:0)

通过“metaData”属性发送数据。因此,Store将触发“metachange”事件,您可以使用以下方法在网格上执行重新配置:

grid.reconfigure(store, new Ext.grid.ColumnModel(metaData.columns));