Ich muss die HTML-Tabelle in meiner Seite in ein Excel exportieren, wenn der Benutzer auf die Schaltfläche "Exportieren" klickt. Jetzt habe ich hier eine Lösung für den Stack-Overflow gefunden, der in Firefox funktioniert.Javascript, HTML-Tabelle nach Excel zu exportieren
Export dynamic html table to excel in javascript in firefox browser
Nun ist es nicht verarbeitet Sonderzeichen wie ö, ü, ö, die in Sprachen gemeinsam sind wir benutzen hier also wollte ich fragen, ob jemand weiß, wie ich sie erfolgreich und ohne Probleme exportieren ?
Hier ist mein Code:
function tabletoExcel(table, name) {
var uri = 'data:application/vnd.ms-excel;base64,'
, template = '<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40"><head><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>{worksheet}</x:Name><x:WorksheetOptions><x:DisplayGridlines/></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--></head><body><table>{table}</table></body></html>'
, base64 = function (s) { return window.btoa(unescape(encodeURIComponent(s))); }
, format = function (s, c) { return s.replace(/{(\w+)}/g, function (m, p) { return c[p]; }); };
if (!table.nodeType) table = document.getElementById(table);
var ctx = { worksheet: name || 'Worksheet', table: table.innerHTML };
window.location.href = uri + base64(format(template, ctx));
}
Mit dieser Methode können Sie nur das exportieren, was auf der Seite sichtbar ist. Geht es Ihnen mit diesem Ansatz gut? – Candide
Ja. Das versuche ich zu tun. Manchmal gibt es Namen mit Sonderzeichen und sie werden nicht korrekt exportiert. Also, ich möchte wissen, welche Kodierung ich verwenden soll? – Tulips
Es funktioniert nicht in IE .. – Nayeem