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 setTimeout()传递函数参数(包括传递对象参数)
Apr 07 Javascript
关于js datetime的那点事
Nov 15 Javascript
JS与jQ读取xml文件的方法
Dec 08 Javascript
JS正则验证多个邮箱完整实例【邮箱用分号隔开】
Apr 19 Javascript
详解vue2.0的Element UI的表格table列时间戳格式化
Jun 13 Javascript
JS获取子、父、兄节点方法小结
Aug 14 Javascript
详解vue-cli构建项目反向代理配置
Sep 07 Javascript
vue-awesome-swiper滑块插件使用方法详解
Nov 27 Javascript
AngularJS对动态增加的DOM实现ng-keyup事件示例
Mar 12 Javascript
js根据需要计算数组中重复出现某个元素的个数
Jan 18 Javascript
react高阶组件添加和删除props
Apr 26 Javascript
vue cli3适配所有端方案的实现
Apr 13 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
PHP CURL获取cookies模拟登录的方法
2013/11/04 PHP
YII2.0之Activeform表单组件用法实例
2016/01/09 PHP
PHP实现上传多文件示例代码
2017/02/20 PHP
PHP框架laravel的.env文件配置教程
2017/06/07 PHP
PHP Swoole异步读取、写入文件操作示例
2019/10/24 PHP
新浪中用来显示flash的函数
2007/04/02 Javascript
JavaScript初学者应注意的七个细节详细介绍
2012/12/27 Javascript
前台js改变Session的值(用ajax实现)
2012/12/28 Javascript
禁止空格提交表单的js代码
2013/11/17 Javascript
javascript实现避免页面按钮重复提交
2015/01/08 Javascript
JQuery标签页效果的两个实例讲解(4)
2015/09/17 Javascript
JS组件Bootstrap Table使用实例分享
2016/05/30 Javascript
学习 NodeJS 第八天:Socket 通讯实例
2016/12/21 NodeJs
JS使用cookie实现只出现一次的广告代码效果
2017/04/22 Javascript
详解Vue路由开启keep-alive时的注意点
2017/06/20 Javascript
JavaScript用200行代码制作打飞机小游戏实例
2017/06/21 Javascript
详解在vue-cli项目中安装node-sass
2017/06/21 Javascript
react native与webview通信的示例代码
2017/09/25 Javascript
js实现多图和单图上传显示
2019/12/18 Javascript
Vant Weapp组件踩坑:picker的初始赋值解决
2020/11/12 Javascript
python基于BeautifulSoup实现抓取网页指定内容的方法
2015/07/09 Python
Python即时网络爬虫项目启动说明详解
2018/02/23 Python
python3 selenium自动化 frame表单嵌套的切换方法
2019/08/23 Python
Python 闭包,函数分隔作用域,nonlocal声明非局部变量操作示例
2019/10/14 Python
纯CSS实现设置半个字符的样式
2014/07/03 HTML / CSS
HTML5添加鼠标悬浮音响效果不使用FLASH
2014/04/23 HTML / CSS
html5 实现客户端验证上传文件的大小(简单实例)
2016/05/15 HTML / CSS
英国领先的运动营养品牌:Protein Dynamix
2018/01/02 全球购物
C#笔试题
2015/07/14 面试题
数控专业毕业生求职信
2014/06/12 职场文书
2014年预备党员学习新党章思想汇报
2014/09/15 职场文书
认错检讨书
2014/10/02 职场文书
2014年精神文明工作总结
2014/12/23 职场文书
介绍信如何写
2015/01/31 职场文书
2015年仓管员工作总结
2015/04/21 职场文书
寒假致家长的一封信
2015/10/10 职场文书