我需要使用窗口中的按钮从网格下载文件。为了发送过滤器参数,我使用 store.load 但它不会下载文件,但会尝试读取它。有什么解决办法吗?
store.load({
params: {
startExel: parseInt(Ext.getCmp('startE').getValue())
}
});
startExel 是一个额外的参数,用于指示我要下载 Excel 文件。
我需要使用窗口中的按钮从网格下载文件。为了发送过滤器参数,我使用 store.load 但它不会下载文件,但会尝试读取它。有什么解决办法吗?
store.load({
params: {
startExel: parseInt(Ext.getCmp('startE').getValue())
}
});
startExel 是一个额外的参数,用于指示我要下载 Excel 文件。
我认为通过简单的配置更改不可能做到这一点。因为商店是通过 AJAX 调用加载的。
这是给你的一个想法:
返回一个JSON
带有文件下载 url 的对象作为存储加载请求的响应。不是实际的文件内容。
{ success = false, url='...'}
在客户端处理存储加载失败,然后识别并提取返回的 url。您可能需要稍微调整阅读器配置。
调用window.open(url)
以启动文件下载。
从 SO看到这个问题。
在服务器端返回文件时包含以下标头:
Content-disposition: attachment