javascript - 使用 Javascript 将 HTML 文件转换为 Excel 文件

标签 javascript html xml excel

我有一个 HTML 字符串,我想将其转换为 Excel 文件。我尝试了以下代码,但在 Excel 中看不到任何数据。

var tableToExcel = (function() {
    var uri = 'data:application/vnd.ms-excel;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]; });
    }
    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));
    }
})()

如果我运行上述代码,Excel 正在下载,但我在 Excel 中看不到任何数据。 是否有其他解决方案可以将 HTML 文件转换为 Excel 文件?

最佳答案

也许这会起作用?
jQuery - table2excel
在CDNJS上查看,发现TableExport太,所以你可以在脚本标签中引用远程JS库...
这是GitHub遵循他们的安装指南...

关于javascript - 使用 Javascript 将 HTML 文件转换为 Excel 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40438922/

相关文章:

javascript - Bootstrap selectpicker val 不会接受仅字符串的对象

html - 如何在容器中垂直居中行?

java - 根据 XSD 验证完整的 XML

html - 新问题 Chrome opacity 0 不可点击

mysql - xml 与数据库

java - 最佳实践 : Java/XML serialization: how to determine to what class to deserialize?

javascript - 多步模式 - 带进度条

javascript - 单击时在变量中使用 javascript 解析 XML 文件

javascript - 为什么我会得到这个 'cannot read property ' length' of undefined'? (JavaScript)

javascript - 在 iOS 中禁用缩放(网页)