news 2026/9/1 14:40:35

JS 导出 Excel 文件、SheetJS(xlsx)前端导出 Excel

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
JS 导出 Excel 文件、SheetJS(xlsx)前端导出 Excel

一、JS 导出 Excel 文件

<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"/><metahttp-equiv="X-UA-Compatible"content="IE=edge"/><metaname="viewport"content="width=device-width, initial-scale=1.0"/><title>JS 导出 Excel 文件</title><style>*{margin:0;padding:0;box-sizing:border-box;}.app{margin:20px 0 0 20px;}table{border:0.5px solid black;}td, th{width:100px;height:30px;line-height:30px;text-align:center;border:0.5px solid black;}</style></head><body><divclass="app"><tableid="data"cellspacing="0"><tr><th>序号</th><th>姓名</th><th>年龄</th></tr><tr><td>1</td><td>张三</td><td>25</td></tr><tr><td>2</td><td>李四</td><td>30</td></tr></table><!-- 必须是 a 标签,如果是 button 标签没有 href 属性,如果无法设置 href 属性,就不能生成 Excel文件 --><aid="toExcel"href="">导出 Excel 文件</a></div><script>vartoExcel=document.getElementById("toExcel");toExcel.onclick=function(event){// 获得表格的 HTML 标签和文本数据varmyHtml=`<html> <head> <meta charset='UTF-8'> </head> <body>${document.getElementById("data").outerHTML}</body> </html>`;// 创建一个 Blob 对象// 第一个参数是文件的数据// 第二个参数是文件类型属性对象varmyBlob=newBlob([myHtml],{type:"application/vnd.ms-excel",});varmyTarget=event.target;// 利用 URL.createObjectURL 方法为元素 myTarget 生成 blobURLmyTarget.href=URL.createObjectURL(myBlob);// 设置文件名myTarget.download="人员表";};</script></body></html>

二、SheetJS(xlsx)前端导出 Excel

  1. 安装依赖
pnpmaddxlsx
  1. 核心 API 调用链路
import*asXLSXfrom"xlsx";// 1、准备数据,数组对象constrows=[{姓名:'张三',年龄:28,部门:'技术部'},{姓名:'李四',年龄:32,部门:'产品部'},];// 2、数组对象 → 工作表(Worksheet)constworksheet=XLSX.utils.json_to_sheet(rows);// 3、新建工作簿(Workbook)constworkbook=XLSX.utils.book_new();// 4、将工作表追加到工作簿,并指定工作表名称XLSX.utils.book_append_sheet(workbook,worksheet,'员工信息');// 5、指定工作簿名称吗,触发浏览器下载文件XLSX.writeFile(workbook,`导出文件_${Date.now()}.xlsx`);
  • Excel 工作簿就是 Excel 文件本身
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/1 14:40:32

房地产销售中的守盘

房地产销售中的守盘 房地产销售中的守盘&#xff0c;是楼盘正式开卖之前&#xff0c;销售团队做准备的阶段。守盘期的具体工作&#xff0c;主要包括这几项 把楼盘研究透&#xff1a;这是基础。销售需要彻底熟悉楼盘的每一处细节&#xff0c;从户型、朝向到小区规划。同时还要去…

作者头像 李华
网站建设 2026/9/1 14:40:19

S/4 HANA ABAP实战:从CDS视图到RAP框架的转型指南

最近在帮一个朋友梳理他们团队的技术栈&#xff0c;聊到ERP系统升级时&#xff0c;他提了一个很具体的问题&#xff1a;“我们准备从ECC迁移到S/4 HANA&#xff0c;团队里几个老ABAPer心里有点没底。市面上培训资料要么太老&#xff0c;要么只讲理论&#xff0c;有没有那种能直…

作者头像 李华
网站建设 2026/9/1 14:39:59

AI Agent协同工作流:从通信协议到工程实践

你肯定遇到过这样的场景&#xff1a;一个Agent能帮你写代码&#xff0c;另一个Agent能帮你调API&#xff0c;还有一个Agent能帮你分析日志。它们各自都很能干&#xff0c;但当你需要它们接力完成一个复杂任务时——比如先分析需求、再生成代码、最后部署测试——你就得手动在它…

作者头像 李华
网站建设 2026/9/1 14:39:50

【单片机毕业设计推荐】基于 STM32 的人体健康运动监测终端设计与实现 基于 STM32 的老人跌倒报警与生理参数采集系统设计(023707)

文章目录20 个相关毕业设计备选题目项目研究背景摘要总体方案核心功能技术路线项目演示关于我们项目案例源码获取温馨提示&#xff1a;本人主页置顶文章(点我)有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;本人主页置顶文章(点我)有 CSDN 平台官…

作者头像 李华
网站建设 2026/9/1 14:39:41

【单片机毕业设计推荐】基于 STM32 或 51 单片机的环境火情监测与短信报警系统设计 基于 STM32 或 51 单片机的室内烟雾温湿度智能监控装置设计(023807)

文章目录20 个相关毕业设计备选题目项目研究背景摘要总体方案核心功能技术路线项目演示关于我们项目案例源码获取温馨提示&#xff1a;本人主页置顶文章(点我)有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;本人主页置顶文章(点我)有 CSDN 平台官…

作者头像 李华
网站建设 2026/9/1 14:34:43

基于SpringBoot的员工信息管理系统(毕设源码+文档)

温馨提示&#xff1a;本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;本人主页置顶文章(点我)开头有 CSDN 平台…

作者头像 李华