我正在尝试将HTML表转换为XLSX uisng AngularJS甚至纯JavaScript.
当我使用下面的下载格式转换为XLS时,正在打开XLS文件.
var blob = new Blob([template], {type: "data:application/vnd.ms-excel"});
window.navigator.msSaveOrOpenBlob(blob, "myExcel.xls");
但是,我的要求是要使用XLSX中的文件,因此我用以下相同的代码更改了MIME类型和文件扩展名,
var blob = new Blob([template], {type: "data:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"});
window.navigator.msSaveOrOpenBlob(blob, "myExcel.xlsx");
但是,当我打开下载的xlsx文件时,它已损坏,MS Office显示错误弹出窗口.
我做错了什么以及如何将HTML表转换为XLSX?
甚至其他想法也被接受.
PS:表非常复杂,行在列中以及所有行中,因此ALASQL,JS-XLSX等插件无济于事.
解决方法:
只是尝试改变MIME类型
将其更改为application / vnd.ms-excel,它也可以与XLSX一起正常工作.
var blob = new Blob([template], {type: "application/vnd.ms-excel"});
window.navigator.msSaveOrOpenBlob(blob, "myExcel.xlsx");
试试这个代码.
标签:xlsx,angularjs,javascript,excel
来源: https://codeday.me/bug/20191025/1932428.html