javascript实现客户端兼容各浏览器创建csv并下载的方法


Posted in Javascript onMarch 23, 2015

本文实例讲述了javascript实现客户端兼容各浏览器创建csv并下载的方法。分享给大家供大家参考。具体实现方法如下:

$("#radarDLBut").click(function(){
var data = [displayData["radar_chart"]["r_label"],displayData["radar_chart"]["r_default"]]; 
var csvContent = "data:text/csv;charset=utf-8,\ufeff";
if (window.navigator.msSaveOrOpenBlob) {
  csvContent = "\ufeff";
}
data.forEach(function(infoArray, index){
  dataString = infoArray.join(",");
  csvContent += index < data.length ? dataString+ "\n" : dataString;
});
if (window.navigator.msSaveOrOpenBlob) {
  // if browser is IE
  var blob = new Blob([decodeURIComponent(encodeURI(csvContent))],{
 type: "text/csv;charset=utf-8;"
  });
  navigator.msSaveBlob(blob, 'subject.csv');
}else{
  var encodedUri = encodeURI(csvContent);
  var link = document.createElement("a");
  link.setAttribute("href", encodedUri);
  link.setAttribute("download", "subject.csv");
  document.body.appendChild(link);
  link.click();
}
});

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
Jquery Validate 正则表达式实用验证代码大全
Aug 23 Javascript
javascript闭包入门示例
Apr 30 Javascript
js和jquery中循环的退出和继续下一个循环
Sep 03 Javascript
jQuery/CSS3图片特效插件整理推荐
Dec 07 Javascript
js实现div层缓慢收缩与展开的方法
May 11 Javascript
jQuery基于toggle实现click触发DIV的显示与隐藏问题分析
Jun 12 Javascript
vue 数组和对象不能直接赋值情况和解决方法(推荐)
Oct 25 Javascript
javascriptvoid(0)含义以及与&quot;#&quot;的区别讲解
Jan 19 Javascript
详解VS Code使用之Vue工程配置format代码格式化
Mar 20 Javascript
浅谈JS中this在各个场景下的指向
Aug 14 Javascript
JQuery Ajax如何实现注册检测用户名
Sep 25 jQuery
vue.js封装switch开关组件的操作
Oct 26 Javascript
jQuery实现拖拽效果插件的方法
Mar 23 #Javascript
jQuery操作表单常用控件方法小结
Mar 23 #Javascript
JavaScript自定义等待wait函数实例分析
Mar 23 #Javascript
JavaScript中匿名函数用法实例
Mar 23 #Javascript
JavaScript创建一个object对象并操作对象属性的用法
Mar 23 #Javascript
JavaScript使用function定义对象并调用的方法
Mar 23 #Javascript
JavaScript通过function定义对象并给对象添加toString()方法实例分析
Mar 23 #Javascript
You might like
PHP开发规范手册之PHP代码规范详解
2011/01/13 PHP
ThinkPHP实现批量删除数据的代码实例
2014/07/02 PHP
Yii实现多按钮保存与提交的方法
2014/12/03 PHP
smarty内置函数config_load用法实例
2015/01/22 PHP
PHP explode()函数的几个应用和implode()函数有什么区别
2015/11/05 PHP
PHP云打印类完整示例
2016/10/15 PHP
Laravel中批量赋值Mass-Assignment的真正含义详解
2017/09/29 PHP
PHP实现获取url地址中顶级域名的方法示例
2019/06/05 PHP
jQuery的三种$()
2009/12/30 Javascript
javaScript同意等待代码实现心得
2011/01/01 Javascript
js 手机号码合法性验证代码集合
2012/09/29 Javascript
js实现杯子倒水问题自动求解程序
2013/03/25 Javascript
微信小程序 滚动到某个位置添加class效果实现代码
2017/04/19 Javascript
iscroll.js滚动加载实例详解
2017/07/18 Javascript
nodejs实现超简单生成二维码的方法
2018/03/17 NodeJs
使用react实现手机号的数据同步显示功能的示例代码
2018/04/03 Javascript
详解babel升级到7.X采坑总结
2019/05/12 Javascript
通过实例讲解JS如何防抖动
2019/06/15 Javascript
利用Python自带PIL库扩展图片大小给图片加文字描述的方法示例
2017/08/08 Python
在Python中使用Neo4j的方法
2019/03/14 Python
python求绝对值的三种方法小结
2019/12/04 Python
解决python 找不到module的问题
2020/02/12 Python
解决Keras中CNN输入维度报错问题
2020/06/29 Python
Python+unittest+requests+excel实现接口自动化测试框架
2020/12/23 Python
css3 column实现卡片瀑布流布局的示例代码
2018/06/22 HTML / CSS
美国真皮手袋品牌:GiGi New York
2017/03/10 全球购物
Linux如何修改文件和文件夹的权限
2012/06/27 面试题
学雷锋志愿服务月活动总结
2014/03/09 职场文书
募捐倡议书
2014/04/14 职场文书
国家励志奖学金个人先进事迹材料
2014/05/04 职场文书
应届生自荐书
2014/06/23 职场文书
向国旗敬礼活动小结
2014/09/27 职场文书
小学生差生评语
2014/12/29 职场文书
高考作弊检讨书1500字
2015/02/16 职场文书
个人借条范本
2015/05/25 职场文书
浅谈Laravel中使用Slack进行异常通知
2021/05/29 PHP