我需要在javascript或php中使用 .xls 扩展名将 html 表导出为 excel
我正在使用下面的代码,但它不会导出到带有 .xls 扩展名的文件如果可能在嵌入在 javascript 代码中的 php 代码中,那么它很好。
链接到小提琴。
var tableToExcel = (function() {
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];}) }
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))
}
});