Angularjs FileSaver.js saveAs(Xlsx)
我正在使用Angularjs FileSaver.js saveAs(Xlsx),angularjs,filesaver.js,Angularjs,Filesaver.js,我正在使用filesaver.js将我的div(带有多个表)导出到excel。我可以使用下面的代码将其导出为XLS var blob = new Blob([document.getElementById('exportable').innerHTML], { type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8" }); saveAs(blob, "Test Repo
filesaver.js
将我的div(带有多个表)导出到excel。我可以使用下面的代码将其导出为XLS
var blob = new Blob([document.getElementById('exportable').innerHTML], {
type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8"
});
saveAs(blob, "Test Report using FileSaver.xls");
但是,我想将div导出到XLSX。有人能帮忙吗?我已尝试将MIME类型更改为XLSX,但没有帮助。更新
W3C没有实现.xlsx
,因此浏览器也不例外。但是您可以使用alsql
一个js库,该库将数据导出为有效的。xlsx
以下是or运行代码
函数myCtrl($scope){
$scope.exportData=函数(){
alasql('SELECT*INTO-XLSX(“Report.XLSX”,{headers:true})FROM?',[$scope.items]);
};
$scope.items=[{
姓名:“约翰·史密斯”,
电子邮件:“j。smith@example.com",
dob:“1985-10-10”
}, {
姓名:“简·史密斯”,
电子邮件:“简。smith@example.com",
dob:“1988-12-22”
}, {
姓名:“简·史密斯”,
电子邮件:“一月。smith@example.com",
dob:“2010-01-02”
}, {
姓名:“杰克·史密斯”,
电子邮件:“杰克。smith@exmaple.com",
dob:“2009-03-21”
}, {
姓名:“乔希·史密斯”,
电子邮件:“josh@example.com",
dob:“2011-12-12”
}, {
姓名:“杰西·史密斯”,
电子邮件:“jess@example.com",
dob:“2004-10-12”
}];
};代码>
出口
名称
电子邮件
多巴哥
{{item.name}
{{item.email}
{{item.dob}日期:'MM/dd/yy'}
不起作用。使用xlsx下载的文件,打开时显示错误“Excel无法打开文件“Test.xlsx”,因为文件格式或文件扩展名无效。验证文件是否已损坏,以及文件扩展名是否与文件格式匹配。然后什么也没发生。你是说模板和xls?等等,我还在寻找github问题的可能解决方案,你能分享你的div html吗?他们尝试使用类型:“application/octet stream”
你可以使用这个JSFIDLE示例代码