Javascript将网页中的html导出到Excel模板(xltx)

时间:2019-12-06 16:11:26

标签: javascript excel

我想使用javascript将网页中的html导出到特定的excel模板(扩展名为xltx)。我在下面找到了这段代码,可以很好地将HTML导出到新工作簿中,但是我无法弄清楚如何对其进行修改,以便将其导出到我创建的xltx模板中。我是编码新手,如果这是一个愚蠢的问题,我深表歉意。我进行了搜索,但尚未找到解决方案。任何帮助将不胜感激!

function clickEvent_Test() {

    var htmls = htmlHeaders + htmlString;
    var uri = 'data:application/vnd.openxmlformats-officedocument.spreadsheetml.template;base64,';
    var 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>';
    var base64 = function(s) {
        return window.btoa(unescape(encodeURIComponent(s)))
    };

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


    var ctx = {
        worksheet: 'AllData',
        table: htmls
    }


    var link = document.createElement("a");
    link.download = "TrackerExport.xls";
    link.href = uri + base64(format(template, ctx));
    link.click();
}

0 个答案:

没有答案