若依vue 多table前端HTML页面导出一张Excel表

news2024/10/5 13:33:01

前言

导入依赖,具体前端vue配置就不介绍了,直接晒具体细节代码

实现

在这里插入图片描述

需要在多table外加div,其他都是基本操作

js代码

import FileSaver from 'file-saver'
import * as XLSX from "xlsx";

const htmlToExcel = {

  getExcelNew(className, excelName) {
    var xlsxParam = {raw: true}; // 导出的内容只做解析,不进行格式转换

    // 创建新的表格元素并插入到DOM中
    var newTable = document.createElement('table');
    newTable.innerHTML = document.querySelector("#table2");
    newTable.innerHTML = document.querySelector("#table3");
    newTable.innerHTML = document.querySelector("#table4");
    newTable.innerHTML = document.querySelector("#table5");
    newTable.innerHTML = document.querySelector("#table6");
    newTable.innerHTML = document.querySelector("#table7");
    document.body.appendChild(newTable);

    let fix = document.querySelector('.el-table__fixed');
    // document.querySelector('.el-picker-panel').innerHTML = "";
    // document.querySelector('.el-picker-panel').parentNode.removeChild(document.querySelector('.el-picker-panel'));
    let wb;
    if (fix) { //判断要导出的节点中是否有fixed的表格,如果有,转换excel时先将该dom移除,然后append回去
      wb = XLSX.utils.table_to_book(document.querySelector(className).removeChild(fix));
      document.querySelector(className).appendChild(fix);
    } else {
      wb = XLSX.utils.table_to_book(document.querySelector("#tableApp"));
    }
    var wbout = XLSX.write(wb, {bookType: 'xlsx', bookSST: true, type: 'array'});

    try {
      FileSaver.saveAs(new Blob([wbout], {type: 'application/octet-stream'}), excelName + ".xlsx")
    } catch (e) {
      if (typeof console !== 'undefined') {
      }
    }
    return wbout
  },

};
export default htmlToExcel;

点个赞吧!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/787071.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

实验二十四、滞回比较器电压传输特性的测量

一、题目 滞回比较器电压传输特性的测量。 二、仿真电路 电路如图1所示。 为便于观察电压传输特性的变化,输入信号采用信号发生器产生的幅值为 10 V 10\,\textrm V 10V、频率为 20 Hz 20\,\textrm{Hz} 20Hz 的三角波电压。采用虚拟的运算放大电路,其…

自学网络安全(黑客)两个月都没入门?

最近我经常会看到这一类的问题: 学习XXX知识没效果;学习XXX技能没方向;学习XXX没办法入门; 给你一个忠告,如果你完全没有基础的话,前期最好不要盲目去找资料学习,因为大部分人把资料收集好之后…

DP学习第三篇之不同路径

DP学习第三篇之不同路径 62. 不同路径 - 力扣(LeetCode) 一.题目解析 二. 算法原理 状态表示 tips: 经验题目要求。以[i,j]位置为结尾,。。。 dp[i][j]: 走到[i, j]位置时,一共多少种路径 状态转移方程 tips: 用之前或之后的状…

Visual Studio 2022 cmake配置opencv开发环境

1. 环境与说明 这里我用的是 widnows 10 64位,Visual Studio 用的 Visual Studio Community 2022 (社区版) 对于Android开发工程师来说,为什么要使用Visual Studio 呢 ? 因为在Visual Studio中开发调试OpenCV方便,可以开发调试好后&#xf…

DDQN求解FJSP问题

柔性调度问题代码,DDQN求解FJSP问题 迭代曲线图 奖励函数迭代曲线 makespan迭代曲线 代码!! 全部见我的git仓库: DFJSP_Share DDQN算法主体 import csv import os from environment2.Environment import Environment import torch from …

生物信息学_玉泉路_课堂笔记_05 第五章 从头基因组组装与注释

🍅 课程:生物信息学_玉泉路_课堂笔记 中科院_2022秋季课 第一学期 🍅 个人笔记使用 🍅 2023/7/20 上周回顾 从头基因组组装与注释 第一节 基因组调查 最左边的 error-peak 是测序错误导致的 杂合导致的峰 重复序列 在纯和峰值的右…

简单明了证明多态虚表是位于常量区

证实虚表存储与常量区 class Person { public:virtual void BuyTicket() { cout << "买票-全价" << endl; }virtual void Func1() {cout << "Person::Func1()" << endl;}virtual void Func2() {cout << "Person::Func…

2 mybatis常见错误汇总

2.1 org.apache.ibatis.exceptions.PersistenceException: ### Error building SqlSession. ### Cause: org.apache.ibatis.builder.BuilderException: Error creating document instance. Cause: org.xml.sax.SAXParseException; lineNumber: 2; columnNumber: 6; 不允许有匹…

ubuntu 20.04 rtc时间显示问题探究

1、硬件与软件 本次测试的硬件为RK3568芯片&#xff0c;操作系统为ubuntu 20.04。 2、RTC与系统时间 先说结果&#xff0c;如果RTC驱动不可用或者RTC内部存储的时间非法&#xff0c; 那么操作系统会存储上一次有效的时间&#xff0c;当再次上电时&#xff0c;date命令会使用存储…

gitee上创建新仓库如何clone到本地,并初始化项目

目录 一、克隆 方法一 方法二 二、初始化项目 构建基本框架 自动生成代码 一、克隆 方法一 由于github速度较慢&#xff0c;这里我们使用gitee。我们在gitee上面创建一个仓库&#xff0c;然后我们可以通过ideal直接克隆下来&#xff0c;仓库设置如下 接着使用ideal将项…

Matlab 点云平面特征提取

文章目录 一、简介二、实现代码2.1基于k个邻近点2.2基于邻近半径参考资料一、简介 点云中存在这各种各样的几何特征,这里基于每个点的邻域协方差来获取该点的所具有的基础几何特征(如下图所示),这样的做法虽然不能很好的提取出点云中的各个部分,但却是可以作为一种数据预处…

超越POSIX:一个时代的终结?

在本文中&#xff0c;我们通过对Portable Operating System Interface&#xff08;POSIX&#xff09;抽象的历史演变进行系统性的回顾&#xff0c;提供了一个全面的视图。我们讨论了推动这些演变的一些关键因素&#xff0c;并确定了在构建现代应用程序时使它们不可行的缺陷。 …

想要快速进阶车载测试!这些基础问题你一定要知道

1.简述ADCU(域控)有哪些基本组成单元&#xff1f; MCU,SOC,加解串器&#xff0c;CAN收发器&#xff0c;网络交换机&#xff0c;电源管理模块芯片PMIC等。 2.MCU和SOC的区别是什么&#xff1f;主要应用场景分别有哪些&#xff1f; MCU为主控芯片&#xff0c;底盘域以及车身域等…

拓扑排序模板(附带题解:有向图的拓扑序列+Fine Logic)

目录 应用的问题&#xff1a; 原理解释及性质&#xff1a; 原理&#xff1a; 性质&#xff1a; 解题模板&#xff1a; 模板1&#xff1a; 模板2&#xff1a; 例题&#xff1a; 例题1&#xff1a;有向图的拓扑序列 题目描述&#xff1a; 思路&#xff1a; 代码详解&…

【Linux】文件描述符及重定向

目录 文件描述符的引入 什么是文件描述符 文件描述符的分配规则 重定向 输出重定向 输入重定向 追加重定向 dup2() 文件描述符的引入 上一章&#xff0c;我们讲解了系统接口&#xff0c;了解了open()函数的返回值是一个整数.那么这个整数究竟是什么呢&#xff1f;我们可…

非Spring环境 | Mybatis-Plus插入数据返回主键两种方式(注解或XML)

废话不多说&#xff0c;直接撸代码: <?xml version"1.0" encoding"UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace&qu…

vr海上安全作业模拟培训软件降低风险隐患

VR虚拟现实技术在军事训练中的应用越来越广泛。其中&#xff0c;将VR技术应用到出海安全知识教育培训中&#xff0c;可以有效地提高学员的安全知识和技能水平&#xff0c;降低实际操作中的风险。以下是VR出海安全知识教育培训的价值。 VR技术是一种利用计算机生成的虚拟环境来模…

【SpirngCloud】分布式事务解决方案

【SpirngCloud】分布式事务解决方案 文章目录 【SpirngCloud】分布式事务解决方案1. 理论基础1.1 CAP 理论1.2 BASE 理论1.3 分布式事务模型 2. Seata 架构2.1 项目引入 Seata 3. 强一致性分布式事务解决方案3.1 XA 模式3.1.1 seata的XA模式3.1.2 XA 模式实践3.1.3 总结 4. 最终…

ARP协议(地址解析协议)

文章目录 ARP协议&#xff08;地址解析协议&#xff09;MAC地址ARP协议ARP具体实现同一链路不同链路 ARP 缓存缓存查询 APR请求/响应报文 ARP协议&#xff08;地址解析协议&#xff09; MAC地址 MAC 地址的全称是 Media Access Control Address&#xff0c;即媒体访问控制地址…

全网最细,时序数据库InfluxDB详解,你不知道的都在这...

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 直接上图片&#…