将 html 表导出到 UTF-8 格式的 Excel 文件

Nir*_*man 5 html javascript excel utf-8

我正在使用上面的代码将 html 表导出到 Excel 文件。

\n\n
<!DOCTYPE html>\n<html>\n<head>\n    <meta http-equiv="content-type" content="application/vnd.ms-excel; charset=UTF-8">\n    <meta charset="UTF-8" />\n    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.3/jquery.min.js"></script>\n    <script lang="js">\n        function fnExcelReport() {\n            var tab_text = \'<html xmlns:x="urn:schemas-microsoft-com:office:excel">\';\n            tab_text = tab_text + \'<head><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet>\';\n\n            tab_text = tab_text + \'<x:Name>Test Sheet</x:Name>\';\n\n            tab_text = tab_text + \'<x:WorksheetOptions><x:Panes></x:Panes></x:WorksheetOptions></x:ExcelWorksheet>\';\n            tab_text = tab_text + \'</x:ExcelWorksheets></x:ExcelWorkbook></xml></head><body>\';\n\n            tab_text = tab_text + "<table border=\'1px\'>";\n            tab_text = tab_text + $(\'#myTable\').html();\n            tab_text = tab_text + \'</table></body></html>\';\n\n            var data_type = \'data:application/vnd.ms-excel\';\n\n            var ua = window.navigator.userAgent;\n            var msie = ua.indexOf("MSIE ");\n\n            if (msie > 0 || !!navigator.userAgent.match(/Trident.*rv\\:11\\./)) {\n                if (window.navigator.msSaveBlob) {\n                    var blob = new Blob([tab_text], {\n                        type: "application/csv;charset=utf-8;"\n                    });\n                    navigator.msSaveBlob(blob, \'Test file.xls\');\n                }\n            } else {\n                $(\'#test\').attr(\'href\', data_type + \', \' + encodeURIComponent(tab_text));\n                $(\'#test\').attr(\'download\', \'Test file.xls\');\n            }\n\n        }\n    </script>\n</head>\n<body>\n    <a href="#" id="test" onClick="javascript:fnExcelReport();">download</a>\n\n    <table id="myTable">\n        <thead>\n            <tr>\n                <td style="padding-right: 30px;"><b>\xd7\xa9\xd7\x9d \xd7\xa4\xd7\xa8\xd7\x98\xd7\x99</b>\n\n                </td>\n                <td style="padding-right: 30px;"><b>\xd7\x92\xd7\x99\xd7\x9c</b>\n\n                </td>\n            </tr>\n        </thead>\n        <tbody>\n            <tr>\n                <td>Tester1</td>\n                <td>30</td>\n            </tr>\n            <tr>\n                <td>Tester2</td>\n                <td>29</td>\n            </tr>\n            <tr>\n                <td>Tester3</td>\n                <td>17</td>\n            </tr>\n        </tbody>\n    </table>\n</body>\n
Run Code Online (Sandbox Code Playgroud)\n\n

\n\n

它工作得很好,但是当我输入希伯来语字符时,我遇到了编码问题。

\n\n

如何将此文件编码为 UTF-8 编码,以便所有文本都按需要显示?

\n