我的问题的答案如下所述.

问题是,为了让FireFox对a.click()做出反应并显示它的文件对话框,很快就调用了行window.URL.revokeObjectURL(url).所以,我刚刚使用setTimeout为行window.URL.revokeObjectURL(url)添加了一个延迟.此更改使其在FireFox中可用.当然,它也适用于Chrome.

更新后的代码如下所示,最后一行代码只有一处变化.此外,在FireFox中使用此更改的演示是:http://js.do/sun21170/84977

用于导出的Blob代码(适用于FireFox和Chrome)

//export data in Chrome or FireFox

//this works in Chrome as well as in FireFox

sa = true;

var myBlob = new Blob( [table] , {type:'text/html'});

var url = window.URL.createObjectURL(myBlob);

var a = document.createElement("a");

document.body.appendChild(a);

a.href = url;

a.download = "newfile.xls";

a.click();

//adding some delay in removing the dynamically created link solved the problem in FireFox

setTimeout(function() {window.URL.revokeObjectURL(url);},0);

虽然上面的代码运行完美,但我认为在导出到xls文件时,最好使用类型:’application / vnd.ms-excel,即使表变量包含html字符串.

这个小改动使FireFox自动使用Excel作为打开导出文件的默认程序,否则FireFox使用Laucnch Windows应用程序(默认)打开文件.我的笔记本电脑上的默认应用是Edge浏览器.

var myBlob = new Blob( [table] , {type:'application/vnd.ms-excel'});

如果您想在旧版IE浏览器中使用100%客户端方法,则无法使用Blob对象,因为它在较旧的IE浏览器中不可用,但您可以使用下面的代码片段中的其他方法.

在IE< = IE 11中将Html导出到Excel,包括IE 8和IE 9

function ExportTabletoExcelInOldIE(table)

{

//table variable contains the html to be exported to Excel

var sa = null;

var ua = window.navigator.userAgent;

var msie = ua.indexOf("MSIE ");

if (msie > 0) // If old Internet Explorer including IE 8

{

//make sure you have an empty div with id of iframeDiv in your page

document.getElementById('iframeDiv').innerHTML = '';

txtArea1.document.open("txt/html", "replace");

txtArea1.document.write(table);

txtArea1.document.close();

txtArea1.focus();

sa = txtArea1.document.execCommand("SaveAs", true, "DataExport.xls");

document.getElementById('iframeDiv').innerHTML = "";

}

return (sa);

}

要使上述IE特定代码起作用,请在页面标记中添加以下内容.

在较旧的IE浏览器中导出时需要空Div

火狐不能html转execl,使用Blob无法在FireFox中使用Excel导出JavaScript相关推荐

  1. 火狐网页对话框_默认情况下,在Firefox中展开“添加书签”对话框

    火狐网页对话框 If you are reading this article you are probably annoyed that every single time you add a bo ...

  2. php中怎么连接数据库中的表,php 连接 excel表格数据库数据-php中如何将execl的数据导入到数据库中...

    php中如何将execl的数据导入到数据库中 php导出大量数据的Excel: PHP从数据库分多次读取100万行记录,和分多次将100万行写入文本文件都没问题 Excel可以支持100万行记录,Ex ...

  3. 火狐标签在中间_在Firefox中保留未使用的标签

    火狐标签在中间 If you have a lot of content heavy webpages open in Firefox, it soon adds up on memory usage ...

  4. php如何导入数据,““php中如何将execl的数据导入到数据库中

    php中如何将execl的数据导入到数据库中 1.使用PHP Excel Parser Pro,但是这个软件为收费软件: 2.可EXCEL表保存为CSV,然后通过phpmyadmin或者SQLyog导 ...

  5. 火狐浏览器怎么录制屏幕_轻松获取Firefox中的屏幕截图

    火狐浏览器怎么录制屏幕 Have you been looking for a quick and easy way to take partial or full screenshots of a ...

  6. 火狐切换国外账户_如何删除您的Firefox帐户

    火狐切换国外账户 Mozilla Firefox uses a Firefox account to sync your passwords, bookmarks, and other browsin ...

  7. 火狐启用falsh_如何在Firefox中启用暗模式

    火狐启用falsh Firefox will soon begin respecting Windows 10's dark app mode setting. But you can enable ...

  8. 火狐4.9保存书签不显示_将Firefox书签导入Opera 9.5

    火狐4.9保存书签不显示 Opera 9.5 was officially released today.  I started to play with this version today and ...

  9. 火狐搜索栏打开新标签_在Firefox中合并地址和搜索栏

    火狐搜索栏打开新标签 The Search Bar in Firefox is very useful for finding additional information or images whi ...

最新文章

  1. iOS多线程拾贝------操作巨人编程
  2. HDU Problem 2062 Bone Collector【01背包】
  3. 你有哪些deep learning(rnn、cnn)调参的经验
  4. php Function split() is deprecated 的解决办法(转)
  5. testbench文件显示波形_modelsim仿真没有波形或看不到波形的原因及解决方法 - 全文...
  6. 计算机网络实验题教程推介,计算机网络实验教程从原理到实践(附光盘)
  7. Centos防火墙添加IP白名单
  8. 如何制作学术Poster?
  9. smartdns使用指南_OpenWrt之SmartDNS 使用教程(PLUS+版)
  10. Xshell更改用户数据文件夹的方法
  11. web前端笔记整理,从入门到上天,周周更新
  12. Self-Supervised Vision Transformers with DINO-代码研读
  13. Vue中使用echarts,echarts 封装以及使用的事项
  14. redis短信发送限制
  15. 玉米社:SEM竞价推广预算设置方法
  16. Kafka教程(一)基础入门:基本概念、安装部署、运维监控、命令行使用
  17. google skia
  18. 日本某地发生了一件谋杀案
  19. 在统计学中_[求助] OR在统计学中指什么?
  20. 嵌入式AI —— 6. 为糖葫芦加糖,浅谈深度学习中的数据增广

热门文章

  1. 2021海口高考调研成绩查询,2021年海口市高考调研测试附答案.doc
  2. LSM303DLH六轴角度传感器驱动
  3. 手机屏幕测试html5,一加手机5屏幕测试:色彩素质优秀,唯独分辨率是美中不足...
  4. 查词app android教程,英语查单词app哪个好_查单词app推荐_专门查单词的app
  5. 微信小程序提取汉字字母大写
  6. R WinBugs network meta analysis
  7. 关于小米文件管理器的介绍及源码下载
  8. 关于三角形面积的公式与格点多边形面积计算算法的讨论
  9. [Win10] 代理服务器出现问题或地址有误
  10. 【路径规划】基于遗传算法求解多中心VRP问题matlab源码