【发布时间】:2020-08-20 13:57:27
【问题描述】:
我想在 php 或 javascript 中将 html 元素或表单导出到 excel(.xlsm) 模板,就像在这个 中一样图片文件。我搜索了可能的解决方案,但我得到的只是将表格数据导出到 Excel,我也可以使用它,但我需要输入字段,因为它们与 this 图片。
到目前为止,我有将表格导出到 excel 的用户基本代码,但是当我更改文件的扩展名时,excel 说它是一个损坏的文件,我使用的代码如下:
function exportTableToExcel(tableID, filename = ''){
var downloadLink;
var dataType = 'application/vnd.ms-excel';
var tableSelect = document.getElementById(tableID);
var tableHTML = tableSelect.outerHTML.replace(/ /g, '%20');
// Specify file name
filename = filename?filename+'.xlsm':'excel_data.xlsm';
// Create download link element
downloadLink = document.createElement("a");
document.body.appendChild(downloadLink);
if(navigator.msSaveOrOpenBlob){
var blob = new Blob(['\ufeff', tableHTML], {type: dataType});
navigator.msSaveOrOpenBlob( blob, filename);
}else{
// Create a link to the file
downloadLink.href = 'data:' + dataType + ', ' + tableHTML;
// Setting the file name
downloadLink.download = filename;
//triggering the function
downloadLink.click();
}
}
此代码返回带有或不带有自定义名称的 excel 文件。
【问题讨论】:
-
谢谢你的帮助,但我的项目是基于 php 和 javascript 的......你可以参考一下吗?
标签: javascript php excel templates