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 相关文章推荐
javascript Xml增删改查(IE下)操作实现代码
Jan 30 Javascript
一个网马的tips实现分析
Nov 28 Javascript
jquery获得下拉框值的代码
Aug 13 Javascript
window.open以post方式将内容提交到新窗口
Dec 26 Javascript
text-align:justify实现文本两端对齐 兼容IE
Aug 19 Javascript
js给table赋值的实例代码
Oct 13 Javascript
一个极为简单的requirejs实现方法
Oct 20 Javascript
JavaScript ES6中CLASS的使用详解
Nov 22 Javascript
在JS中如何把毫秒转换成规定的日期时间格式实例
May 11 Javascript
使用jQuery实现简单的tab框实例
Aug 22 jQuery
js字符串倒序的实例代码
Nov 30 Javascript
Node.JS用纯JavaScript生成图片或滑块式验证码功能
Sep 12 Javascript
离开当前页面前使用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
人族 Terran 基本策略
2020/03/14 星际争霸
从康盛产品(discuz)提取出来的模板类
2011/06/28 PHP
PHP json格式和js json格式 js跨域调用实现代码
2012/09/08 PHP
js获取对象为null的解决方法
2013/11/21 Javascript
javascript制作2048游戏
2015/03/30 Javascript
jquery表单验证插件formValidator使用方法
2016/04/01 Javascript
避免jQuery名字冲突 noConflict()方法
2016/07/30 Javascript
JavaScript函数基础详解
2017/02/03 Javascript
详解vue项目优化之按需加载组件-使用webpack require.ensure
2017/06/13 Javascript
JavaScript之Date_动力节点Java学院整理
2017/06/28 Javascript
vue组件watch属性实例讲解
2017/11/07 Javascript
webpack构建的详细流程探底
2018/01/08 Javascript
js实现带搜索功能的下拉框
2020/01/11 Javascript
JavaScript函数Call、Apply原理实例解析
2020/02/17 Javascript
[58:46]OG vs NAVI 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
Python中的__new__与__init__魔术方法理解笔记
2014/11/08 Python
Python2.6版本中实现字典推导 PEP 274(Dict Comprehensions)
2015/04/28 Python
python3.4用函数操作mysql5.7数据库
2017/06/23 Python
100行Python代码实现自动抢火车票(附源码)
2018/01/11 Python
解决pycharm界面不能显示中文的问题
2018/05/23 Python
终端命令查看TensorFlow版本号及路径的方法
2018/06/13 Python
Python分割指定页数的pdf文件方法
2018/10/26 Python
Django框架模板的使用方法示例
2019/05/25 Python
Django中提供的6种缓存方式详解
2019/08/05 Python
python中的subprocess.Popen()使用详解
2019/12/25 Python
Python 定义只读属性的实现方式
2020/03/05 Python
利用pyecharts读取csv并进行数据统计可视化的实现
2020/04/17 Python
一些常用的HTML5模式(pattern) 总结
2015/07/14 HTML / CSS
美国领先的奢侈美容零售商:Bluemercury
2017/07/26 全球购物
Vans荷兰官方网站:美国南加州的原创极限运动潮牌
2018/01/23 全球购物
Ruby如何创建一个线程
2013/03/10 面试题
学习雷锋倡议书
2014/04/15 职场文书
2014办公室副主任四风对照检查材料思想汇报
2014/09/20 职场文书
车辆年检委托书范本
2014/10/14 职场文书
职工宿舍管理制度
2015/08/05 职场文书
VUE使用draggable实现组件拖拽
2022/04/06 Vue.js