vue+element-ui+js页面打印(打印elementui的table)

vue + element 前台打印 基于print-nb自定义表格的打印实现 阅读详情

前端调用浏览器打印功能,实现纯前端vue+element-ui+js打印页面功能

1.效果展示

打开新页面,打印表格,可以自动分页
在这里插入图片描述

2.封装成公共函数

可以根据自己的需要,选择是否封装成公共函数。
我是放在utils下的config.js文件里面。

//id 是你要打印的某个dom元素的id名
        export function printExcel(id) {
            // 空页面
            let printStr = "<html><head><meta http-equiv='Content-Type' content='text/html; charset=utf-8'></head>";
            // 定义element-ui table组件的样式
            const tabStyle = `<style>
                table{width:100%;display:table-cell!important;box-sizing:border-box;}
                .el-table__header,.el-table__body,.el-table__footer{width:100%!important;border-collapse: collapse;text-align:center;}
                table,table tr th, table tr td { border:1px solid #ddd;color:#606266;word-wrap:break-word}
                table tr th,table tr td{padding:4mm 0mm;word-wrap:break-word }
                .el-table__body, tr td .cell{width:100%!important}
                .el-table th.gutter{display: none;}
                .el-table colgroup.gutter{display: none;}
                </style><body>`;
            let content = "";
            // 获取名为传入id的 dom元素内的内容
            let str = document.getElementById(id).innerHTML;
            // 拼接空页面+style样式+dom内容
            content = content + str;
            printStr = printStr + tabStyle + content + "</body></html>";
            // 打开新页面
            let pwin = window.open("_blank");
            // 将内容赋值到新页面
            pwin.document.write(printStr);
            pwin.document.close();
            // 聚焦-不加focuse,在某些情况下,打印页面会有问题。
            pwin.focus();
            // 使用setTimeout,等页面dom元素渲染完成后再打印。
            setTimeout(() => {
                pwin.print(); // 打印功能。 例如 window.print() 直接打印当前整个页面。 
                pwin.close(); // 关闭 打印创建的当前页面
            }, 500);

        }

3.在.vue文件中引入并使用"printExcel"函数

在需要打印的dom元素外面包了一个div,id叫“export”
在这里插入图片描述
// 使用-点击事件触发"printExcel ",传入参数为 id

// 引入函数
import { printExcel } from "@/utils/config";
    printExcel() {
      printExcel("export");
    },
【Vue】Vue 使用 Print.js 打印选中区域的html,用到的是Element ui table表格,解决页面样式不出现或者table表格样式错乱问题!!! 阅读详情

相关推荐

Vue项目实战:用Print.js完美打印Element UI表格(附样式错乱终极解决方案)

本文详细介绍了在Vue项目中,如何利用Print.js实现Element UI表格的完美打印,并提供了解决打印时样式错乱问题的终极方案。通过创建独立的打印容器、应用精准的CSS打印媒体查询,以及处理分页和页眉页脚等高级技巧,确保表格打印效果清晰、专业,提升B端应用的用户体验。

weixin_29015051的博客 145

vue + elementUI 实现表格的打印和下载

这篇文章主要介绍前端根据 table 表格里面已有的数据实现的下载功能,不需要调用接口,只是纯前端的一个功能实现;顺便介绍一下打印功能。 1、打印 获取表格数据,调用 window 的 print 方法;打印结束之后刷新页面重新给表格赋值。 <template> <div> <el-button @click="printTable">打印表格</el-button> <el-table id="myTable" :data="tableDat

weixin_43299180的博客 8998

electron-vue+elementui,静默打印,餐饮行业,小票机打印,58mm,80mm。完整版。多任务打印。完整代码。

操作系统: MacOS Big Sur:11.1 框架版本: electron:11.2.0 vue:2.5.16 elementui:2.14.1 font-awesome:4.7.0 第一步:创建本地存储,用于存储添加的小票机。本人使用的是sqlite3。在小编的另一篇文章中写到了。我在这里再描述一下。(settingsDb.js) const {dbconnect} = require('./utils/db') const { v5: uuidv5, v4: uuidv4} = requi.

梦一样的博客,神话般的感觉 3894

Element-UI el-table组件表格打印

需求 打印Element-UI el-table组件渲染的表格。 总体布局 整体采用居中布局,表格宽度设置为1000px。表格宽度应该根据打印的纸张大小设置,过大会导致表格打印时显示不全,过小则不能充分利用纸张空间。我用A4纸打印设置宽度1000px刚好。 1. 静态页面 <template> <div class="print-container"> <h1 style="text-align: center">员工信息表</h1> &l

木缘的博客 1万+

Vue + element-ui 【前端项目一】Table 表格并实现分页+搜索 3

Vue + element-ui 【前端项目一】Table 表格并实现分页+搜索 3

wgchen 1021

自动驾驶预测决策规划八股

预测规划八股个人总结。

dawushixiange的博客 479

解决浏览器打印时,背景色不显示

只需要一行代码就可以解决 -webkit-print-color-adjust: exact;

前端菜鸡的博客 5236

QT6与QT5安装全攻略:从下载到环境配置一站式指南

本文提供了一份详尽的QT6与QT5安装教程,涵盖从版本选择、在线安装器使用到环境变量配置的全过程。针对新手常见痛点,重点对比了QT6与QT5的安装差异,并给出了MinGW与MSVC编译器的选择建议,旨在帮助开发者快速搭建稳定可用的QT开发环境,避免常见错误。

weixin_29216353的博客 313

element ui表格打印_前端表格下载/打印(可vue/可element-ui)

下载表格打印表格id="myTable":height="tableHeight":data="tableData"style="width: 100%">prop="date"label="日期"width="180">prop="name"label="姓名"width="180">prop="address"label="地址">import FileSaver fr...

weixin_29713403的博客 847

从《新程序员》系列看程序员职业发展趋势与成长路径

在信息技术日新月异的当下,软件开发行业蓬勃发展,程序员作为行业的核心力量,其成长与发展路径备受瞩目。《新程序员》系列杂志应运而生,以其前瞻性的视角、丰富多元的内容,为广大程序员尤其是新程序员提供了洞察行业趋势、学习前沿技术、汲取前辈经验的宝贵窗口。该系列杂志由优快云精心打造,自推出以来,便在开发者群体中引发了强烈反响。《新程序员》系列内容涵盖了从基础技术知识的深入解读,到行业前沿趋势的精准预测;从优秀开发者的成长历程分享,到各大企业数字化转型的实践案例剖析等多个维度。

AllenLV的博客 2260

用友BIP培训资料-设计采购订单新增API接口开发

14.在子实体的String pkMeas = order_hhrSlave0VOJson.getString("pk_meas");Openapi路径:nccloud/api/pu/order_hhrmanage/order_hhrMaster/addAggOrder_hhrMasterVO。实现接口的开发部署,通过openAPI的test类,实现一条数据的插入。16.进入自己的Idea打开老师发的TestOpenApi并且编译完成后如下。12.编写检测是否字段中是否含有中文的方法。

m0_68497879的博客 1549

Element UI表格打印:Table打印功能实现

在日常办公和数据展示场景中,将表格数据打印成纸质文档或PDF是常见需求。Element UI(一套基于Vue.js 2.0的桌面端组件库)的Table组件虽然没有内置打印功能,但通过巧妙结合浏览器API和自定义样式,我们可以轻松实现专业的表格打印效果。本文将从场景痛点出发,提供两种实用的实现方案,并详解优化技巧,帮助开发者快速解决表格打印难题。 ## 打印功能实现方案 ### 原生打印API方...

gitblog_00344的博客 1278

R语言单因素被试内ANOVA检验

在R语言中,我们可以使用多种方法进行被试内ANOVA检验,其中包括使用内建函数或使用外部包。我们随机选择了10个被试,并对每个被试使用了三种不同的药物处理。通过上述代码示例,我们可以使用R语言进行单因素被试内ANOVA检验。假设我们的数据存储在一个名为"data"的数据框中,其中包含两个列:一个列是被试的编号,另一个列是生物指标的测量值。在上述代码中,我们创建了一个名为"data"的数据框,其中"Subject"列包含了被试的编号,"Measurement"列包含了生物指标的测量值。参数指定了数据来源。

PixelNovaO的博客 363

Element UI表格数据打印:Table打印输出方案

在后台管理系统开发中,经常需要将Element UI的Table组件数据导出为纸质文档或PDF。本文将介绍三种实用的Table打印方案,从基础实现到高级自定义,帮助开发者快速解决数据打印需求。 ## 方案对比与选择建议 | 方案 | 实现难度 | 兼容性 | 自定义程度 | 适用场景 | |------|----------|--------|------------|----------| ...

gitblog_00438的博客 974

改进YOLOv9的CT图像肺结节检测与分类算法:从原理到实战

本文将详细介绍如何改进YOLOv9算法,使其更好地适应CT图像肺结节检测与分类任务。我们将从数据集准备、模型改进、训练优化到最终部署,完整呈现一个端到端的深度学习项目,并提供完整的代码实现。

YOLO 188

Archery通过OpenResty代理转发后登录一直提示Forbidden

测试几遍,连账号密码都没用验证,因为不管输什么都是提示Forbidden。找到配置文件settings.py,下面命令可到配置文件路径。回到页面刷新,随便输入个账号密码,验证失败证明请求成功了。查看Preview,提示CSRF验证失败,请求被中断。域名:dba.hkeasyspeed.com。打开开发者工具查看,网络里面可以看到报403。添加一条配置,把你配置域名添加进去。可以看到页面可以正常访问到。进入Archery容器。重启Archery容器。正常输入账号密码,OK。

万物皆可学 3147

vue+elementui+lodop打印表格

非单页结构,是在mvc视图中引用vue和elementui来使用的,打印el-table表格内容时,可能是因为样式的原因,打印的格式很难调整,在界面中增加一个隐藏的div,里面放个table,获取数据后填充table,打印这个table的内容,样式就好调整了。 @{ ViewBag.Title = "学生基本信息统计"; Layout = "~/Views/Shared/_vueLayout.cs...

随记 5431

Python 爬虫实战:在丁香医生抓取健康科普文章阅读量,普及健康知识

requests:用于发送 HTTP 请求,获取网页内容。或 lxml:用于解析 HTML 页面,提取目标数据。pandas:用于数据清洗和分析。matplotlib和seaborn:用于数据可视化。通过本项目,我们实现了以下目标:使用 Python 爬虫抓取丁香医生的健康科普文章阅读量。对数据进行清洗和分析,找出热门文章。通过可视化展示数据,并普及健康知识。

u014481728的博客 1567

vue + elment ui打印表格数据

vue + elment ui打印表格数据 主要的原理就是 在vue项目中 通过调用浏览器自带的打印功能,完成对table数据的打印 解决表格错位 以及elment ui 双重表头的问题 封装一下打印方法以便于在项目中调用 export function PrintForm(id) { // 空页面 let printStr = "<html><head><meta http-equiv='Content-Type' content='text/html; char

五月慵懒的猫的博客 2557

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Vue结合Element UI的el-table打造加工工序甘特图可视化解决方案

在玻璃加工行业,高效管理切割、磨边、洗、钢化、丝印等复杂工序对于提升生产效率至关重要。本文将介绍如何利用Vue.js框架结合Element UI组件库,自定义实现一个工序甘特图,以可视化展示各道工序的时间线与进度,为生产调度带来便利。

前端开发工程师 5765

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

Vue+Element-UI Table表头排序

Vue代码 <el-table v-loading="loading" :data="standardList" @sort-change='sortChange'> <el-table-column label="序号" prop="id" width="80" sortable='custom'/> </el-table> 在<el-table @sort-change=‘sortChange’> 需要加上@sort-change=‘s

Riqk_Qin的专栏 2364

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Vue+Element-ui 表格树形结构和懒加载

Vue+Element-ui 表格树形结构和懒加载 因为有一个项目涉及到很多资源,并且资源上会附带很多子资源,如果一次加载出来的话会导致请求很慢,开始想着在列表上加一个查子资源的按钮,和悬浮框一次组合然后按需加载。后来想想不太好看,然后去百度看看有没有更好的方法,然后突然看到一个懒加载,发现刚好可以满足我的需求。先看一下element-ui的官方例子 其实已经很清楚了,我把最重要的部分截取出来 这个是官方实现效果: 这个是比较重要的懒加载的具体方法 load对应着el-table :load=“懒加

weixin_42293677的博客 5176

Vue+Element UI Table表格导出Excel和打印

Vue表格导出Excel和打印

m0_48607837的博客 1359

vue+elementui 打印表格不显示表格边框线

如果 Vue 项目使用了 Element UI 组件库中的 Table 组件打印表格时不显示表格边框线,可以通过在 CSS 中覆盖样式来解决。 可以在项目中新建一个 CSS 文件,如 print.css,在该文件中添加如下样式: /* 表格边框 */ table { border-collapse: collapse; border: 1px solid black; } /* 表格内容...

weixin_42590539的博客 2632

vue2 + elementUI 中table表头加复选框图标

开发十年,就只剩下这套架构体系了! >>> ...

埃尔斯的博客 7292
上一篇: vue纯前端导出excel
下一篇: 【elementui upload组件上传多个文件只调用一次接口】
评论 7
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值