如何将html表格保存为在laravel中使用javascript的excel文件格式

Iam试图将html(blade.php文件)表保存在laravel的excel文件中。 我的JavaScript代码

function exportToExcel() { var htmls = ""; 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]; }) }; htmls = "YOUR HTML AS TABLE" var ctx = { worksheet : 'Worksheet', table : htmls } var link = document.createElement("a"); link.download = "export.xls"; link.href = uri + base64(format(template, ctx)); link.click(); } 

button是

<input type="button" onclick="exportToExcel()" value="Export to Excel">

它工作正常。

但问题是,它只能在Chrome和Microsoft Office中运行:excel。 不适用于其他浏览器(IE7 +,Firefox等)和开放式办公软件4(开放式办公软件,开放式办公math软件)。

什么我做? 如何添加其他软件和浏览器到我的代码?

但只显示“你的HTML AS TABLE”。不是我的表值。

你可以使用jsfiddle文件保护程序库

http://jsfiddle.net/TheSharpieOne/XNVj3/1/

并使用如下:

 var nameXclVar = new Blob([TblHtmCodVar], { type: "application/vnd.ms-excel" }); saveAs(nameXclVar, "NamXcl.xls");