html <div > <button type="button" onclick="getXlsFromTbl('tableExcel','myDiv')">IE-Excel-Exportmethode</button> <button type="button" onclick="method5('tableExcel')">Chrome-Excel exportieren</button> </div> <div id="meinDiv"> <table id="tableExcel" width="100%" border="1" cellspacing="0" cellpadding="0"> <tr> <td colspan="5" align="center">HTML-Tabelle nach Excel exportieren</td> </tr> <tr> <td>Spaltenüberschrift 1</td> <td>Spaltenüberschrift 2</td> <td>Klassentitel 3</td> <td>Spaltenüberschrift 4</td> <td>Spaltenüberschrift 5</td> </tr> <tr> <td>aaa</td> <td>bbb</td> <td>ccc</td> <td>ddd</td> <td>ii</td> </tr> <tr> <td>AAA</td> <td>BBB</td> <td>CCC</td> <td>DDD</td> <td>IIII</td> </tr> <tr> <td>FFF</td> <td>GGG</td> <td>HHH</td> <td>III</td> <td>JJJ</td> </tr> </Tabelle> </div> js <script language="JavaScript" type="text/javascript"> //IE-Methodenfunktion getXlsFromTbl(inTblId, inWindow){ versuchen { var allStr = ""; var curStr = ""; wenn (inTblId != null und inTblId != "" und inTblId != "null") { curStr = getTblData(inTblId, inWindow); } if (curStr != null) { alleStr += aktuelleStr; } anders { alert("Die Tabelle, die Sie exportieren möchten, existiert nicht"); zurückkehren; } var Dateiname = getExcelFileName(); doFileExport(Dateiname, allStr); } Fang(e) { alert("Exportausnahme:" + e.name + "->" + e.description + "!"); } } Funktion getTblData(inTbl, inWindow) { var Zeilen = 0; var tblDocument = Dokument; if (!!inWindow && inWindow != "") { wenn (!document.all(inWindow)) { gibt null zurück; } anders { tblDocument = eval(im Fenster).document; } } var curTbl = tblDocument.getElementById(inTbl); var outStr = ""; wenn (curTbl != null) { für (var j = 0; j < curTbl.rows.length; j++) { für (var i = 0; i < curTbl.rows[j].cells.length; i++) { wenn (i == 0 && Zeilen > 0) { outStr += " t"; Zeilen -= 1; } outStr += curTbl.rows[j].cells[i].innerText + "t"; wenn (curTbl.rows[j].cells[i].colSpan > 1) { für (var k = 0; k < curTbl.rows[j].cells[i].colSpan - 1; k++) { outStr += " t"; } } wenn (i == 0) { wenn (Zeilen == 0 und curTbl.rows[j].cells[i].rowSpan > 1) { Zeilen = curTbl.rows[j].cells[i].rowSpan - 1; } } } outStr += "rn"; } } anders { outStr = null; alert(inTbl + "existiert nicht!"); } outStr zurückgeben; } Funktion getExcelFileName() { var d = neues Datum(); var curYear = d.getYear(); var curMonth = "" + (d.getMonth() + 1); var curDate = "" + d.getDate(); var curHour = "" + d.getHours(); var curMinute = "" + d.getMinutes(); var curSecond = "" + d.getSeconds(); wenn (aktuellerMonat.Länge == 1) { aktueller Monat = "0" + aktueller Monat; } wenn (aktuellesDatum.Länge == 1) { aktuellesDatum = "0" + aktuellesDatum; } wenn (aktuelleStunde.Länge == 1) { aktuelleStunde = "0" + aktuelleStunde; } wenn (aktuelleMinute.Länge == 1) { aktuelleMinute = "0" + aktuelleMinute; } wenn (aktuelleSekunde.Länge == 1) { aktuelleSekunde = "0" + aktuelleSekunde; } var Dateiname = "Tabelle" + "_" + aktuellesJahr + aktuellerMonat + aktuellesDatum + "_" + aktuelleStunde + aktuelleMinute + aktuelleSekunde + ".csv"; Dateinamen zurückgeben; } Funktion doFileExport(inName, inStr) { var xlsWin = null; wenn (!!document.all("glbHideFrm")) { xlsWin = glbHideFrm; } anders { var Breite = 6; var Höhe = 4; var openPara = "left=" + (Fenster.Bildschirm.Breite / 2 - Breite / 2) + ",oben=" + (Fenster.Bildschirm.Höhe / 2 - Höhe / 2) + ",Bildlaufleisten=nein,Breite=" + Breite + ",Höhe=" + Höhe; xlsWin = Fenster.öffnen("", "_blank", openPara); } xlsWin.document.write(inStr); xlsWin.document.close(); xlsWin.document.execCommand('Speichern unter', true, inName); xlsWin.close(); } //Chrome-Methode var idTmr; Funktion getExplorer() { var Explorer = Fenster.Navigator.UserAgent; //dh wenn (explorer.indexOf("MSIE") >= 0) { gib „ie“ zurück; } // Feuerfuchs sonst wenn (explorer.indexOf("Firefox") >= 0) { gib „Firefox“ zurück; } //Chrom sonst wenn (explorer.indexOf("Chrome") >= 0) { gib „Chrome“ zurück; } //Oper sonst wenn (explorer.indexOf("Opera") >= 0) { gib „Opera“ zurück; } //Safari sonst wenn (explorer.indexOf("Safari") >= 0) { gib „Safari“ zurück; } } Funktion Methode5(Tabellen-ID) { wenn(getExplorer()=='ie') { var curTbl = document.getElementById(tableid); var oXL = neues ActiveXObject("Excel.Anwendung"); var oWB = oXL.Workbooks.Add(); var xlsheet = oWB.Worksheets(1); var sel = document.body.createTextRange(); sel.moveToElementText(aktuelleTabelle); sel.select(); sel.execCommand("Kopieren"); xlsheet.Einfügen(); oXL.Sichtbar = wahr; versuchen { var fname = oXL.Application.GetSaveAsFilename("Excel.xls", "Excel-Tabellen (*.xls), *.xls"); } fangen (e) { drucken("Verschachtelter Fang gefangen " + e); Endlich oWB.SaveAs(fname); oWB.Schließen(Änderungen speichern = false); oXL.Beenden(); oXL = null; idTmr = window.setInterval("Bereinigung();", 1); } } anders { tableToExcel(Tabellen-ID) } } Funktion Aufräumen() { Fenster.ClearInterval(idTmr); Müll sammeln(); } var tableToExcel = (Funktion() { var uri = "data:application/vnd.ms-excel;base64,", Vorlage = '<html><head><meta charset="UTF-8"></head><body><table>{table}</table></body></html>', base64 = Funktion(en) { return window.btoa(unescape(URIKomponente(n) kodieren)) }, format = Funktion(en, c) { return s.replace(/{(\w+)}/g, Funktion(m, p) { return c[p]; }) } Rückgabefunktion (Tabelle, Name) { wenn (!table.nodeType) Tabelle = document.getElementById(Tabelle) var ctx = {Arbeitsblatt: Name || 'Arbeitsblatt', Tabelle: Tabelle.innerHTML} window.location.href = uri + base64(Format(Vorlage, ctx)) } })() </Skript> Damit ist dieser Artikel zum Exportieren einer Tabelle nach Excel mit reinem JS abgeschlossen. Weitere Informationen zum Exportieren einer Tabelle nach Excel mit JS finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: Verstehen Sie alle Aspekte von HTTP-Headern mit Bildern und Text
>>: Detaillierte Erklärung der neuen Funktion ROLE in MySQL 8
Dieser Artikel verwendet Vue und fügt Mausklicker...
In diesem Artikel wird der spezifische Code für J...
1. Hintergrund der parallelen Replikation Zunächs...
Inhaltsverzeichnis Vorwort Konzept Stabilisierung...
Vorwort Nehmen Sie Element Plus als Beispiel, um ...
Basisbild Das Basisbild hat zwei Bedeutungen: Ist...
Inhaltsverzeichnis Vorwort 1. GMT Was ist GMT Ges...
Inhaltsverzeichnis 1. Vererbung der Prototypkette...
Als ich kürzlich das Intranet-Portal änderte, sti...
Beheben Sie das Problem, dass unter Windows 10 ke...
1. Entfernen Sie Backslashes mit der Methode „str...
Inhaltsverzeichnis Problembeschreibung 1. Basislö...
1. Formular 1. Die Rolle des Formulars HTML-Formu...
Wenn Sie Dateien zwischen Windows und Linux übert...
Um das Problem zu lösen, dass Deepin den Google C...