1.我使用Ext要要导出Grid里的数据到Excel,可以导出多页,而不仅仅是Grid里的浏览的一页.
刚开始的时候,我使用window.open的方式打开下载的文件,可是在ie6,ie7下根本就不能下载文件(这个时候我想,使用extjs真tm麻烦,后台都产生好excel文件了,怎么前台一个下载功能还这么烦,一般使用jsp页面设置一个文件的url链接就可以点击下载了,但是做的系统已经使用extjs,只能搞定解决办法了):
form.doAction('submit', {
url : 'config/DesignBomAction.do?op=exportBom',
waitTitle : '请稍等',
waitMsg : '数据读取中……',
params : baseParams,
scope : this,
success : function(form, _action) {
var url = encodeURI(basepath+"/servlet/DownloadFile?filename="
+ result.msg);
if (url) {
var appWinow=window.open(url);
appWindow.focus();
} else {
Ext.Msg.show({
title : '系统提示',
msg : "导出数据失败",
buttons : Ext.Msg.OK,
icon : Ext.Msg.INFO
});
}
this.close();
},
failure : function(form, action) {
Ext.Msg.show({
title : '系统提示',
msg : "导出数据失败",
buttons : Ext.Msg.OK,
icon : Ext.Msg.INFO
});
},
scope : this
});
我都说了,上面的这种方案,实际情况在ie6,ie7是下载不了文件的.
2.于是我就google,baidu一下,看一下extjs怎么导出excel的.
Extjs官方给的解决方案:
[url] http://extjs.com/forum/showthread.php?t=32400&highlight=excel[/url]翻译过来:
http://extjs.org.cn/node/324
看了这个解决方案:核心就是把grid里的store数据转换成xml的形式,之后创建一个form提交到服务器,服务器在设置响应为excel下载文件,并返回提交的数据.
我觉得这不是多找事干么?为什么我在后台不直接生成excel,前台你就负责下载就好了.最主要的,我发现这个解决没有讲到ExtJs分页表格时,如果我导出的多页数据时怎么搞定?
3.我的解决方案(支持ie6,ie7,firefox2.0):
1)先点击一个下载文件的提交按钮,这个时候,后台生成了相应的excel文件,返回文件名.
2)在另一个按钮里,单击下载命令,处理事件代码形式如下:
var url="yourdownloadurl?filename=yourexcelname"; window.location.href=url;
就这样就完全可以搞定下载,其实就是变通了一下.
分享到:
相关推荐
Extjs4 grid 导出为Excel 下载后放在网站(不放在网站中导出按钮不能会点击无响应,因为这里调用了swf文件)里可直接运行index.html测试 <link href='...
Extjs4前台前台grid导出excel
EXTJS grid导出EXCEL文件,源码可以直接导入MYECLIPSE使用,EXTJS版本3.2.0
ExtJs Grid导出Excel实例源码,后台C#。有分页功能,却仍可实现导出后台所有记录的功能
EXTJS中grid控件数据导出excel示例。很好理解。
以前一直没找到extjs2.2的全包,这次在添加Myeclipse的插件时,我找了好久才找到。现在分享下,以免兄弟姐妹们到处去找:
本人亲测在 ExtJs4.2 上可用,有两种实现导出Excel的 方法,资源内附简单的使用说明。因本人没多少资源分了,所以万不得已设置 资源分为 2 分。
ExtJS 2.2 API 文档,CHM格式。
EXTJS 2.2 离线帮助文件CHM格式 欢迎大家使用!! 从EXTJS官方网站上下载下来后做成的CHM,以前2.0版也是我做的! 没有问题!!
extjs 2.2的压缩包
java项目之ExtJS 2.2 开源网络硬盘系统(jsp上传下载)java项目之ExtJS 2.2 开源网络硬盘系统(jsp上传下载)java项目之ExtJS 2.2 开源网络硬盘系统(jsp上传下载)java项目之ExtJS 2.2 开源网络硬盘系统(jsp上传...
NULL 博文链接:https://damen.iteye.com/blog/946039
[上传下载]ExtJS 2.2 开源网络硬盘系统_dogdisk.zip
Extjs 2.2 中文开发文档 , 很少有错误。 我现在做开发,用的就是2.2版本的。
(基于JSP的完整java毕业设计)ExtJS 2.2 图书管理系统(基于JSP的完整java毕业设计)ExtJS 2.2 图书管理系统(基于JSP的完整java毕业设计)ExtJS 2.2 图书管理系统(基于JSP的完整java毕业设计)ExtJS 2.2 图书管理...
ExtJS 2.2 开源网络硬盘系统_dogdisk.zip
ExtJs的中文文档 搭配ExtJs2.2实例更快将ExtJs入手 代码均有详细说明 分类清晰
(基于JSP的完整java毕业设计)ExtJS 2.2 开源网络硬盘系统(附源码)(基于JSP的完整java毕业设计)ExtJS 2.2 开源网络硬盘系统(附源码)(基于JSP的完整java毕业设计)ExtJS 2.2 开源网络硬盘系统(附源码)...
ExtJS的GridPanel导出excel文件,方便快捷易懂!
extjs4.0导出excel示例!赶快下载吧!