EXT Grid 导出Excel的另类实现,可以只导出Grid中显示的列

w_e_ibo:
[url]http://t.cn/zjqEaRh[/url]
[url]http://weibo.com/liao27[/url]
先看效果图:
[img]http://yourgame.iteye.com/upload/picture/pic/20035/d8052f3e-23cf-3923-b2c7-68ef6a490c3e.gif[/img]


点击导出Excel按钮后,可以选择打开,或者保存,我这里选择直接打开:
[img]http://yourgame.iteye.com/upload/picture/pic/20027/d60c9789-4876-3aae-9400-03b974f5abe4.gif[/img]


打开的效果图:
[img]http://yourgame.iteye.com/upload/picture/pic/20025/0a4ff185-9f3c-35c2-9e33-c49d3b8c435c.gif[/img]


然后设定隐藏列(密码,年龄):
[img]http://yourgame.iteye.com/upload/picture/pic/20033/1963c676-9f01-3290-84f1-ebfd996e0495.gif[/img]


然后再导出Excel:
[img]http://yourgame.iteye.com/upload/picture/pic/20021/a18aeabe-bc9d-3cb9-9c81-0bc292ebbc60.gif[/img]


这个Demo采用了的技术包括 :
Struts 1.2 + Spring 2.0 + Hibernate 3.2 + Ext 2.1 + MSSQL2000


说明:
Demo导出方法是简单方便,但是如果你的计算机没有安装Office(Excel)则无法正常导出文件.Ext获得Grid中当前所有显示的列,通过window.open()弹出一个新的窗体来执行请求并把列名作为一个字符串参数传递,请求到了Action执行完转到一包含了

<%@ page language="java"  contentType="application/vnd.ms-excel; charset=GBK"%> 


的jsp页面进行遍历.页面执行完后会自动提示保存或者就打开文件.
下面是相关的jar包.spring 是 2.0,箭头所指的jar包为 Struts用来处理返回给EXT Grid 的 JSON数据.附件中有保留.

如果有更好的方法希望大家能够共享,多多交流学习.提提大家的看法或意见!

[img]http://yourgame.iteye.com/upload/picture/pic/20031/8c3f4b1d-6f45-319b-99aa-314020ec630b.gif[/img]

数据初始化:
先建立数据库 名称:test
然后运行org.lhq.test.ExportDB 类即可初始化数据

或者执行下面脚本(MSSQL2000)
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[t_user]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[t_user]
GO

CREATE TABLE [dbo].[t_user] (
[userid] [int] IDENTITY (1, 1) NOT NULL ,
[username] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[password] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[age] [int] NULL ,
[phone] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]
GO

ALTER TABLE [dbo].[t_user] WITH NOCHECK ADD
PRIMARY KEY CLUSTERED
(
[userid]
) ON [PRIMARY]
GO
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值