我通过extjs和struts,将grid数据导出为excel,但因为grid是分页的,我想将所有页数据整体导出为excel,该如何修改?代码如下:
extjs: function downloadViewData(grid){
var vExportContent = grid.getExcelXml();
if (Ext.isIE6 || Ext.isIE7 || Ext.isSafari || Ext.isSafari2 || Ext.isSafari3) {
var fd=Ext.get('frmDummy');
if (!fd) {
fd=Ext.DomHelper.append(Ext.getBody(),
{
tag:'form',
method:'post',
id:'frmDummy',
action:'exportexcel.jsp',
target:'_blank',
name:'frmDummy',
cls:'x-hidden',
cn:[
{
tag:'input',
name:'exportContent',
id:'exportContent',
type:'hidden'
}
]
}
,true);
}
fd.child('#exportContent').set({value:vExportContent});
fd.dom.submit();
} else {
document.location = 'data:application/vnd.ms-excel;base64,'+Base64.encode(vExportContent);
}
}
jsp:<%@ page language="java" pageEncoding="UTF-8"%>
<%
request.setCharacterEncoding("UTF-8");
response.setHeader("Content-Type","application/force-download");
response.setHeader("Content-Type","application/vnd.ms-excel");
response.setHeader("Content-Disposition","attachment;filename=export.xls");
out.print(request.getParameter("exportContent"));
%>
extjs: function downloadViewData(grid){
var vExportContent = grid.getExcelXml();
if (Ext.isIE6 || Ext.isIE7 || Ext.isSafari || Ext.isSafari2 || Ext.isSafari3) {
var fd=Ext.get('frmDummy');
if (!fd) {
fd=Ext.DomHelper.append(Ext.getBody(),
{
tag:'form',
method:'post',
id:'frmDummy',
action:'exportexcel.jsp',
target:'_blank',
name:'frmDummy',
cls:'x-hidden',
cn:[
{
tag:'input',
name:'exportContent',
id:'exportContent',
type:'hidden'
}
]
}
,true);
}
fd.child('#exportContent').set({value:vExportContent});
fd.dom.submit();
} else {
document.location = 'data:application/vnd.ms-excel;base64,'+Base64.encode(vExportContent);
}
}
jsp:<%@ page language="java" pageEncoding="UTF-8"%>
<%
request.setCharacterEncoding("UTF-8");
response.setHeader("Content-Type","application/force-download");
response.setHeader("Content-Type","application/vnd.ms-excel");
response.setHeader("Content-Disposition","attachment;filename=export.xls");
out.print(request.getParameter("exportContent"));
%>
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货