js中表格转为excel文件如何实现多sheet形式

var idTmr;

function getExplorer() {

var explorer = window.navigator.userAgent ;

//ie

if (explorer.indexOf("MSIE") >= 0) {

return 'ie';

}

//firefox

else if (explorer.indexOf("Firefox") >= 0) {

return 'Firefox';

}

//Chrome

else if(explorer.indexOf("Chrome") >= 0){

return 'Chrome';

}

//Opera

else if(explorer.indexOf("Opera") >= 0){

return 'Opera';

}

//Safari

else if(explorer.indexOf("Safari") >= 0){

return 'Safari';

}

}

function toExcel(tableid) {

if(getExplorer()=='ie')

{

var curTbl = document.getElementById(tableid);

var oXL = new ActiveXObject("Excel.Application");

var oWB = oXL.Workbooks.Add();

var xlsheet = oWB.Worksheets(1);

var sel = document.body.createTextRange();

sel.moveToElementText(curTbl);

sel.select();

sel.execCommand("Copy");

xlsheet.Paste();

oXL.Visible = true;

try {

var fname = oXL.Application.GetSaveAsFilename("Excel.xls", "Excel Spreadsheets (*.xls), *.xls");

} catch (e) {

print("Nested catch caught " + e);

} finally {

oWB.SaveAs(fname);

oWB.Close(savechanges = false);

oXL.Quit();

oXL = null;

idTmr = window.setInterval("Cleanup();", 1);

}

}

else

{

tableToExcel(tableid,'测试','项目收付明细表.xls')

}

}

function Cleanup() {

window.clearInterval(idTmr);

CollectGarbage();

}

var tableToExcel = (function () {

var uri = 'data:application/vnd.ms-excel;base64,'

, template = '

' +

'

' #table thead{width:100%;z-index:5;}\n' +

' #table td{overflow: hidden;text-overflow: ellipsis;white-space: nowrap;table-layout: fixed;padding-right: 0;}\n' +

' #table .project_title{background-color: #88e1ff;font-weight: bold;}\n' +

' #table .batch_title {font-weight: bold}\n' +

' #table .not_end{color: red;}\n' +

' #table tbody tr>td{text-align: left;padding-left: 5px;}'+

' .not_charge{color: blue}\n' +

' .charge{color: green}\n' +

' .pay_month{color: purple}\n' +

' '+

'

'

, base64 = function (s) { return window.btoa(unescape(encodeURIComponent(s))) }

, format = function (s, c) { return s.replace(/{(\w+)}/g, function (m, p) { return c[p]; }) }

return function (table, name, filename) {

if (!table.nodeType) table = document.getElementById(table)

var ctx = { worksheet: name || 'Worksheet', table: table.innerHTML }

let blob = new Blob([format(template, ctx)]);

document.getElementById("dlink").href = URL.createObjectURL(blob);

document.getElementById("dlink").download = filename;

document.getElementById("dlink").click();

}

})()

请问该怎么写才能实现呢

js将excel转为html,js中表格转为excel文件如何实现多sheet形式相关推荐

  1. electron中表格导出excel使用XLSX.writeFile 更改写入位置方法

    问题 Vue项目集成为exe程序 使用electron,但是在web端可以使用的XLSX.writeFile会调用网页端保存文件API选择保存位置 在electron环境下生成的文件自动保存在工作目录 ...

  2. 避免word中表格导入excel表格中变形的问题

    1.word中序号自动递增 选中你要添加"单元格",选择"开始"-"编号",定制自己的格式,选中后,自动添加序号 2.把word中表格数据存 ...

  3. Java面试poi中excel版本大小_java 中 poi解析Excel文件版本问题解决办法

    java 中 poi解析Excel文件版本问题解决办法 发布时间:2020-10-02 03:46:15 来源:脚本之家 阅读:91 作者:程诺 poi解析Excel文件版本问题解决办法 poi解析E ...

  4. python 批量处理word中表格导入excel

    演示图片: auto_we源码: import xlrd, xlwt from xlutils.copy import copy as xl_copy from docx import Documen ...

  5. python excel 转json_Python办公自动化| word 表格转excel

    之前写过一篇 Python办公自动化 | 批量word报告生成工具 ,有小伙伴提出了逆向需求,即:从批量word中获取内容并写入excel,需求背景是汇总一些材料,举例:实习鉴定表.个人简历.档案等. ...

  6. javaSE中的数据导出到Excel表、javaEE中后台生成Excel文件到浏览器端下载

    整个项目中导出数据到.Excel的源码 import java.io.BufferedOutputStream; import java.io.FileInputStream; import java ...

  7. php把excel导入mysql数据库中_PHP将Excel文件导入到MySQL数据库

    这篇文章主要介绍了PHP上传Excel文件导入数据到MySQL数据库示例,可以将Excel的数据写入到MySQL数据库中,感兴趣的同学可以了解一下. 最近在做Excel文件导入数据到数据库.网站如果想 ...

  8. 如何将excel表格导入matlab,将Excel数据导入MATLAB中的方法

    在使用MATLAB对矩阵进行数据处理时,为了方便编辑与修改,常常需要先将数据录入到Excel中,然后再将其导入到MATLAB中参与矩阵运算.那么下面小编教你怎么将Excel数据导入MATLAB中. 将 ...

  9. matlab导入word数据,如何将Excel数据导入MATLAB中?/excel数据导入word模板

    如何将Excel数据导入MATLAB中? 从excel中导入,可以用xlsread()函数. 例如: A=xlsread('C:\Users\Administrator\Desktop\07-29预. ...

最新文章

  1. Vue mixins(混入) 附代码示例详解
  2. 某大厂程序员抱怨:“大厂镀金”是鬼话!从大厂裸辞后,面阿里、字节全都挂掉,连货拉拉都不要自己!...
  3. 怎么去大蒜味(一定要看拉) - 生活至上,美容至尚!
  4. html正则表达式search,正则表达式解析关键字和标签的搜索字段([])
  5. 【效率】推荐10个堪称神器的网站!
  6. c语言 双线程,如何用C语言实现多线程
  7. 在springboot中使用springsecurity实现安全控制
  8. 熟练掌握git撤销命令
  9. NoSQL数据库之国产开源产品:SequoiaDB 分析前言
  10. Flutter高级第2篇:JSON的序列化和反序列化、创建模型类转换Json数据
  11. hadoop学习使用
  12. BLM战略规划的核心是业务模式创新
  13. 盛金公式解一元三次方程_用盛金公式求解一元三次方程
  14. 7-2 古风排版 C语言
  15. 超火的微信渐变国旗头像,一键生成!!
  16. 缓存路由组件+路由组件的2个生命周期钩子 activated 和 deactivated
  17. 三款新品重磅齐发!汉高亮相2021中国国际纺织面料及辅料(秋冬)博览会
  18. python 数据库框架peewee_python peewee模块使用
  19. html js设置颜色渐变效果,Javascript 颜色渐变效果的实现代码
  20. DW01G系列电路是一款高精度的单节可充电锂电池的过充电和过放电保护电路ic

热门文章

  1. php mysql班级网站_小学兴趣班信息网站的设计与实现(PHP,MySQL)
  2. MacBook Pro修改时区无法与恢复服务器取得联系
  3. html5卷轴展开动画,古卷轴平滑打开jQuery动画特效
  4. 男人来自水星 女人来自火星
  5. java数据类型入门程序_「JAVA零基础入门系列」Day3 Java基本数据类型
  6. 单片机学习之IIC协议用24C02连续保存读取数据
  7. 企业车辆管理系统_ER图_功能图_数据字典_数据库脚本
  8. Adobe Acrobat任务栏图标 显示错误 异常(恢复原始Adobe Acrobat/Adobe Reader图标)
  9. Xavier(3):Project ‘*‘ specifies ‘/usr/include/opencv‘ as an include dir, which is not found.
  10. Java用广度优先搜索快速搜索文件