js实例教程-jquery实现excel导出的方法

发布时间:2018-11-28 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了js实例教程-jquery实现excel导出的方法脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
小宝典致力于为广大程序猿(媛)提供高品质的代码服务,请大家多多光顾小站,小宝典在此谢过。

由于javascript本身是没有权限操作本地文件的,除非使用ActiveX,但这东西麻烦又不安全,完全不想用.所以从页面的表格中获得数据保存成本地文件的办法是行不通了.

我们想要导出的是表格中的数据,表格中的数据又是从服务器来的,那我们把服务器上的数据下到本地保存成文件不就可以了.

服务端实现代码:

. 代码如下:


ServletOutputStream out = null;
try{
//设置输出csv的头信息
response.setContentTyPE("text/csv");
String disposITion = "attachment; fileName=data.csv";
response.setHeader("Content-Disposition", disposition);
//获得输出对象
out = response.getOutputStream();
//获得数据
byte[] blobData = CSVParser.parseCsv(rs).getBytes();
out.write(blobData);
out.flush();
out.close();
}catch(Exception e){
throw e;
}finally{
if(out != null)
out.close();
}


有句代码有必要解释一下CSVParser.parseCsv(rs). CSVParser是我在其他地方实现的一个将从数据库中查出的ResultSet对象转换为CSV数据的类.parseCsv方法的参数rs就是ResultSet对象.返回的就是csv格式的字符串数据

客户端我是利用iframe进行下载的。写了个比较通用的方法,大家可以把这个函数放到某个js文件中,使用时直接在页面调用即可

. 代码如下:


//带入url根据查询的数据返回csv
function bsuexportCsv(url){
//如果页面中没有用于下载iframe,增加iframe到页面中
if($(&#39;#downloadcsv').length<=0)
$('body').append("<iframe id=/"downloadcsv/" style=/"display:none/"></iframe>");
$('#downloadcsv').attr('src',url);
}


url是要请求数据的servlet的地址,该地址一定是要返回csv格式的数据

先判断页面中是否有id为downloadcsv的iframe如果没有在body标签中加入iframe.然后将iframe的src属性设置为传入的url地址.

使用时知道在要导出的页面调用bsuExportCsv("https://localhost:8080/csvservelt")就可以了.

由于javascript本身是没有权限操作本地文件的,除非使用ActiveX,但这东西麻烦又不安全,完全不想用.所以从页面的表格中获得数据保存成本地文件的办法是行不通了.

我们想要导出的是表格中的数据,表格中的数据又是从服务器来的,那我们把服务器上的数据下到本地保存成文件不就可以了.

服务端实现代码:

. 代码如下:


ServletOutputStream out = null;
try{
//设置输出csv的头信息
response.setContentType("text/csv");
String disposition = "attachment; fileName=data.csv";
response.setHeader("Content-Disposition", disposition);
//获得输出对象
out = response.getOutputStream();
//获得数据
byte[] blobData = CSVParser.parseCsv(rs).getBytes();
out.write(blobData);
out.flush();
out.close();
}catch(Exception e){
throw e;
}finally{
if(out != null)
out.close();
}


有句代码有必要解释一下CSVParser.parseCsv(rs). CSVParser是我在其他地方实现的一个将从数据库中查出的ResultSet对象转换为CSV数据的类.parseCsv方法的参数rs就是ResultSet对象.返回的就是csv格式的字符串数据

客户端我是利用iframe进行下载的。写了个比较通用的方法,大家可以把这个函数放到某个js文件中,使用时直接在页面调用即可

. 代码如下:


//带入url根据查询的数据返回csv
function bsuExportCsv(url){
//如果页面中没有用于下载iframe,增加iframe到页面中
if($('#downloadcsv').length<=0)
$('body').append("<iframe id=/"downloadcsv/" style=/"display:none/"></iframe>");
$('#downloadcsv').attr('src',url);
}


url是要请求数据的servlet的地址,该地址一定是要返回csv格式的数据

先判断页面中是否有id为downloadcsv的iframe如果没有在body标签中加入iframe.然后将iframe的src属性设置为传入的url地址.

使用时知道在要导出的页面调用bsuExportCsv("https://localhost:8080/csvservelt")就可以了.

觉得可用,就经常来吧!Javascript技巧 脚本宝典 欢迎评论哦!&nbsp;js技巧,巧夺天工,精雕玉琢。小宝典献丑了!

脚本宝典总结

以上是脚本宝典为你收集整理的js实例教程-jquery实现excel导出的方法全部内容,希望文章能够帮你解决js实例教程-jquery实现excel导出的方法所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。