js中table数据导出excel文件
程序员文章站
2022-06-08 17:08:50
...
本文主要和大家分享一些代码,主要和大家分享js中table数据导出excel文件的方法实例,希望能帮助到大家。
表格转换成excel并下载
(document).ready(function () { (“#myBtn”).click(function () { //点击下载按钮,执行方法 CreateExcel(“myTable”,”test”); }); }); //将table导出到excel 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 CreateExcel(tableid,fileName) { 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(fileName + “.xls”, //文件名和文件格式 但尝试改了一下fileName 这里并不影响 “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,fileName) //调用tableToExcex table的id 和 要生成的文件名 } } function Cleanup() { window.clearInterval(idTmr); CollectGarbage(); } var tableToExcel = (function () { var uri = ‘data:application/vnd.ms-excel;base64,’, template = ‘
{table}
’, 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) { if (!table.nodeType) table = document.getElementById(table) var ctx = { worksheet: name || ‘Worksheet’, table: table.innerHTML } // window.location.href = uri + base64(format(template, ctx)) a = document.createElement(“a”); a.download = name; a.href = uri + base64(format(template, ctx)); document.body.appendChild(a); a.click(); document.body.removeChild(a); } })()
下载/Download excel
产品 | 付款日期 | 状态 |
---|---|---|
产品1 | 23/11/2013 | 待发货 |
产品2 | 10/11/2013 | 发货中 |
产品3 | 20/10/2013 | 待确认 |
产品4 | 20/10/2013 | 已退货 |
相关推荐:
以上就是js中table数据导出excel文件的详细内容,更多请关注其它相关文章!