【发布时间】:2018-03-14 07:06:18
【问题描述】:
我想制作一个 csv 文件并让用户通过单击一个按钮来下载它。 有一个搜索用户的表单(带有一些搜索字段)和按钮搜索:这是搜索用户并将其显示在网格中。 表单后面有一个“导出到csv”的链接,这个要取表单字段的值,传给Java(struts),然后Java构造一个csv文件(和grid不一样,比较复杂,许多表中的许多值)并将其返回给extjs,之后,我想将其提供给用户,让他下载。 response.responseText 包含要导出的好 csv,但它太大而无法执行 encodeURI :(
我无法提议下载该文件。有人有什么想法吗? :(
这是我现在做的源代码:
var params = Ext.getCmp("userSearchEngine").getForm().getValues(false);
Ext.Ajax.request({
url : cmts.server + 'exportToCSV.do',
method: 'POST',
headers: { 'Content-Type': 'text/csv'},
params : params,
success: function ( response, request ) {
console.log('success');
console.log(response.responseText);
},
failure: function ( response, request ) {
console.log('FAIL !');
}
});
感谢您的帮助:)
编辑:Java 部分写入响应的输出流
编辑 2:由于一些限制,我无法在服务器端创建文件
【问题讨论】: