龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > Javascript编程 >

JS兼容浏览器的导出Excel(CSV)文件的方法

时间:2014-05-12 02:03来源:网络整理 作者:网络 点击:
分享到:
项目中经常需要导出Excel文件,不在服务器端处理而是富客户端采用Javascript脚本处理数据并导出文件

Js导出表格为Excel文件 的常见一种办法是调用:ActiveXObject("Excel.Application") ,但是这种方法有局限性,只能在IE系列下的浏览器里实现,兼容性方面不理想。

经测试,采用本文推荐的方法能兼容性较好的导出表格内容到Excel文件。

代码如下:

var str = "博客, 域名\nBlog, 2\njb51.net, 3";
var uri = 'data:text/csv;charset=utf-8,' + str;

var downloadLink = document.createElement("a");
downloadLink.href = uri;
downloadLink.download = "export.csv";

document.body.appendChild(downloadLink);
downloadLink.click();
document.body.removeChild(downloadLink);


这种方法在谷歌/火狐系列浏览器里是OK的,但是在IE里会有“传递给系统调用的数据区域太小 ”的报错提示,原因是href指定的值的字节数过多。

So,对于IE浏览器只好判断下,采用ActiveXObject的形式。

如此便能较好的使用Javascript导出HTML内容到Excel文件。

精彩图集

赞助商链接