站长图库向大家介绍了HTML,JS导出Excel等相关知识,希望对您有所帮助
今天遇到一个需要用JS导出Excel的功能,百度了一下,有很多种方法,这里总结了五种,推荐给大家。
这五种方法前四种方法只支持IE浏览器,最后一个方法支持当前主流的浏览器(火狐,IE,Chrome,Opera,Safari)。
以下是代码:
<!DOCTYPE html><html><head><meta charset="UTF-8"><title>html 表格导出道</title><script language="JavaScript" type="text/javascript"> //第一种方法 function method1(tableid) { var curTbl = document.getElementById(tableid); var oXL = new ActiveXObject("Excel.Application"); var oWB = oXL.Workbooks.Add(); var oSheet = oWB.ActiveSheet; var sel = document.body.createTextRange(); sel.moveToElementText(curTbl); sel.select(); sel.execCommand("Copy"); oSheet.Paste(); oXL.Visible = true; } //第二种方法 function method2(tableid) { var curTbl = document.getElementById(tableid); var oXL = new ActiveXObject("Excel.Application"); var oWB = oXL.Workbooks.Add(); var oSheet = oWB.ActiveSheet; var Lenr = curTbl.rows.length; for (i = 0; i < Lenr; i++) { var Lenc = curTbl.rows(i).cells.length; for (j = 0; j < Lenc; j++) { oSheet.Cells(i + 1, j + 1).value = curTbl.rows(i).cells(j).innerText; } } oXL.Visible = true; } //第三种方法 function getXlsFromTbl(inTblId, inWindow){ try { var allStr = ""; var curStr = ""; if (inTblId != null && inTblId != "" && inTblId != "null") { curStr = getTblData(inTblId, inWindow); } if (curStr != null) { allStr += curStr; } else { alert("你要导出的表不存在"); return; } var fileName = getExcelFileName(); doFileExport(fileName, allStr); } catch(e) { alert("导出发生异常:" + e.name + "->" + e.description + "!"); } } function getTblData(inTbl, inWindow) { var rows = 0; var tblDocument = document; if (!!inWindow && inWindow != "") { if (!document.all(inWindow)) { return null; } else { tblDocument = eval(inWindow).document; } } var curTbl = tblDocument.getElementById(inTbl); var outStr = ""; if (curTbl != null) { for (var j = 0; j < curTbl.rows.length; j++) { for (var i = 0; i < curTbl.rows[j].cells.length; i++) { if (i == 0 && rows > 0) { outStr += " t"; rows -= 1; } outStr += curTbl.rows[j].cells[i].innerText + "t"; if (curTbl.rows[j].cells[i].colSpan > 1) { &

