html5导出excel表格_使用前端库生成Excel文件【方法】

可在%ignore_a_1%中用前端库直接生成Excel:一、SheetJS适合快速导出JSON/HTML为.xlsx;二、exceljs支持样式和公式但体积大;三、HTML表格转.xls为轻量兼容方案。

html5导出excel表格_使用前端库生成excel文件【方法】

如果您希望在浏览器中直接生成并导出 Excel 文件,而无需后端参与,则可以借助轻量级前端 JavaScript 库实现。以下是几种可行的方法:

一、使用 SheetJS(xlsx.js)生成 Excel 文件

SheetJS 是一个功能完备的开源库,支持读写多种电子表格格式(如 .xlsx、.xls、.csv),可将 JSON 数据、HTML 表格或数组快速转换为二进制 Excel 工作簿。

1、通过 CDN 引入库文件:

2、准备要导出的数据,例如二维数组:const data = [[“姓名”, “年龄”, “城市”], [“张三”, 28, “北京”], [“李四”, 32, “上海”]];

立即学习“前端免费学习笔记(深入)”;

3、创建工作表对象:const ws = XLSX.utils.aoa_to_sheet(data);

4、新建工作簿并添加工作表:const wb = XLSX.utils.book_new(); XLSX.utils.book_append_sheet(wb, ws, “用户信息”);

5、触发下载:XLSX.writeFile(wb, “导出数据.xlsx”);

二、使用 exceljs 库导出带样式的 Excel 文件

exceljs 支持单元格样式、公式、图片、多工作表等高级特性,适合需要格式控制的场景,但体积较大,需注意加载性能。

1、通过 CDN 加载(推荐使用 unpkg):

2、初始化工作簿与工作表:const workbook = new ExcelJS.Workbook(); const worksheet = workbook.addWorksheet(“报告页”);

3、向工作表写入标题行并设置字体加粗:worksheet.columns = [{ header: “产品”, key: “name” }, { header: “销量”, key: “sales” }]; worksheet.getRow(1).font = { bold: true };

4、插入数据行:worksheet.addRows([{ name: “笔记本电脑”, sales: 126 }, { name: “鼠标”, sales: 89 }]);

5、生成并下载文件:workbook.xlsx.writeBuffer().then(buffer => { const blob = new Blob([buffer], { type: “application/vnd.openxmlformats-officedocument.spreadsheetml.sheet” }); const url = URL.createObjectURL(blob); const a = document.createElement(“a”); a.href = url; a.download = “销售报表.xlsx”; a.click(); });

三、基于 HTML 表格直接导出为 Excel(兼容性方案)

该方法不依赖外部库,利用 Excel 对 HTML 表格的解析能力,适用于简单结构且对格式要求不高的导出需求;生成的文件实际为 .xls 格式,仅兼容旧版 Excel 或启用兼容模式。

1、确保页面中存在标准的 元素,并带有 id 属性,例如:

2、获取表格的 outerHTML 内容:const tableHtml = document.getElementById(“exportTable”).outerHTML;

3、构造包含 Excel MIME 头的完整 HTML 字符串:const fullHtml = “html xmlns:x=”urn:schemas-microsoft-com:office:excel”>” + tableHtml + “

以上就是html5导出excel表格_使用前端库生成Excel文件【方法】的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1606673.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月23日 20:00:15
下一篇 2025年12月23日 20:00:29

相关推荐

发表回复

登录后才能评论
关注微信