首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在laravel中使用javascript将html表格保存为excel文件格式

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

Stack Overflow用户
提问于 2015-07-08 13:36:03
回答 1查看 1.4K关注 0票数 1

我正在尝试将html(blade.php文件)表保存到laravel的excel文件中。我的javascript代码

代码语言: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();
}

按钮是

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

它工作得很好。

但是,问题是,它只适用于Chrome和microsoft-office:excel。不能在其他浏览器(IE7+,火狐等)和开放办公4(开放办公计算,开放办公数学等)软件中工作。

我该怎么做??如何在我的代码中添加其他软件和浏览器??

但是只显示"YOUR HTML AS TABLE".not my table的值。

EN

回答 1

Stack Overflow用户

发布于 2017-09-26 15:15:23

您可以使用jsfiddle文件保存器库

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

并按如下方式使用:

代码语言:javascript
复制
var nameXclVar = new Blob([TblHtmCodVar], { type: "application/vnd.ms-excel" });

saveAs(nameXclVar, "NamXcl.xls");
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31284291

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档