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


Posted in Javascript onMay 03, 2014

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

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

var str = "博客, 域名\nBlog, 2\n3water.com, 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文件。

Javascript 相关文章推荐
接收键盘指令的脚本
Jun 26 Javascript
JS图片切换的具体方法(带缩略图版)
Nov 12 Javascript
jQuery DOM插入节点操作指南
Mar 03 Javascript
jQuery时间轴插件使用详解
Jul 16 Javascript
使用JS 插件qrcode.js生成二维码功能
Feb 20 Javascript
jQuery animate()实现背景色渐变效果的处理方法【使用jQuery.color.js插件】
Mar 15 Javascript
React-router v4 路由配置方法小结
Aug 08 Javascript
详解JSONObject和JSONArray区别及基本用法
Oct 25 Javascript
使用ajax的post同步执行(实现方法)
Dec 21 Javascript
vue实现评论列表功能
Oct 25 Javascript
vue从零实现一个消息通知组件的方法详解
Mar 16 Javascript
vue实现倒计时功能
Mar 24 Vue.js
离开当前页面前使用js判断条件提示是否要离开页面
May 02 #Javascript
js日期联动示例
May 02 #Javascript
jQuery实现的多选框多级联动插件
May 02 #Javascript
自己使用js/jquery写的一个定制对话框控件
May 02 #Javascript
将form表单中的元素转换成对象的方法适用表单提交
May 02 #Javascript
jQuery简单图表peity.js使用示例
May 02 #Javascript
jsPDF导出pdf示例
May 02 #Javascript
You might like
PHP函数篇详解十进制、二进制、八进制和十六进制转换函数说明
2011/12/05 PHP
php基础教程
2015/08/26 PHP
源码分析 Laravel 重复执行同一个队列任务的原因
2017/12/25 PHP
php文件包含的几种方式总结
2019/09/19 PHP
linux mint下安装phpstorm2020包括JDK部分的教程详解
2020/09/17 PHP
js 省地市级联选择
2010/02/07 Javascript
JavaScript中的一些定位属性[图解]
2010/07/14 Javascript
jquery.jstree 增加节点的双击事件代码
2010/07/27 Javascript
ASP.NET jQuery 实例1(在TextBox里面创建一个默认提示)
2012/01/13 Javascript
JavaScript把数组作为堆栈使用的方法
2015/03/20 Javascript
jquery操作angularjs对象
2015/06/26 Javascript
jQuery实现向下滑出的平滑下拉菜单效果
2015/08/21 Javascript
jQuery实现分隔条左右拖动功能
2015/11/21 Javascript
jquery+CSS3实现3D拖拽相册效果
2016/07/18 Javascript
JavaScript实现刷新不重记的倒计时
2016/08/10 Javascript
js中string和number类型互转换技巧(分享)
2016/11/28 Javascript
bootstrap fileinput 插件使用项目总结(经验)
2017/02/22 Javascript
使用Node.js实现ORM的一种思路详解(图文)
2017/10/24 Javascript
解决option标签selected="selected"属性失效的问题
2017/11/06 Javascript
angular4 JavaScript内存溢出问题
2018/03/06 Javascript
详解tensorflow训练自己的数据集实现CNN图像分类
2018/02/07 Python
Python切片索引用法示例
2018/05/15 Python
Python中应该使用%还是format来格式化字符串
2018/09/25 Python
Django csrf 两种方法设置form的实例
2019/02/03 Python
python给微信好友定时推送消息的示例
2019/02/20 Python
图文详解python安装Scrapy框架步骤
2019/05/20 Python
简单了解python单例模式的几种写法
2019/07/01 Python
python数据预处理之数据标准化的几种处理方式
2019/07/17 Python
pycharm不能运行.py文件的解决方法
2020/02/12 Python
全网最详细的PyCharm+Anaconda的安装过程图解
2021/01/25 Python
CSS3中的display:grid,网格布局介绍
2019/10/30 HTML / CSS
万得城电器土耳其网站:欧洲第一大电子产品零售商
2016/10/07 全球购物
音乐之声音乐广播稿
2014/09/10 职场文书
合作协议书范本
2014/10/25 职场文书
2016年“5.12”国际护士节活动总结
2016/04/06 职场文书
MySQL数据库中varchar类型的数字比较大小的方法
2021/11/17 MySQL