3

我加载了一个网格,我想获取将 json 数据加载到其中的当前商店 URL,并将一个额外的参数传递给它,然后将此 URL 作为 pdf 或 xls 加载。但是我怎样才能得到网址?

4

2 回答 2

8

获取代理和 ExtraParams:

var url = grid.getStore().getProxy().url;
var params = grid.getStore().getProxy().extraParams;

然后,构建网址:

var newUrl = url + '?' + Ext.Object.toQueryString (params);

newUrl 将是这样的:

your_url_data.json?param1=value1&param2=value2

我认为不存在执行此操作的代理方法,但您可以扩展现有代理,如下所示:

Ext.define ('MyProxy', {
    extend: 'Ext.data.proxy.Ajax' ,
    buildInternalUrl: function () {
        return this.url + '?' + Ext.Object.toQueryString (this.extraParams);
    }       
});

进而:

var newUrl = grid.getStore().getProxy().buildInternalUrl ();

结果是一样的;)

在这里你可以找到代理文档:Ajax Proxy

于 2012-09-24T09:55:04.190 回答
1

您可以通过以下方式获取商店网址 yourGrid.getStore().getProxy().url

于 2012-09-24T09:14:57.023 回答