纯前端导出word文档
实现这个功能时参考了两处文档,但是都有兼容性问题一个是不兼容ie,一个是只能在ie中使用,不过正好互补了,下面是结合两处文档之后的。(摘自想要飞翔的小猪和iteye_10362的博客。)
注意:ActiveXObject是ie特有的,在其他浏览器上会报错,也可根据ActiveXObject对象判断当前是否为ie浏览器。 $("#test2").wordExport(“客户评价”);是非ie的方法,需要用到jquery,FileSave和jquery.wordexport.js.
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title><script src="./jquery-2.0.0.js"></script><script src="./FileSaver.js"></script><script src="./jquery.wordexport.js"></script><!-- 这三个文件在非ie浏览器下用到 -->
</head>
<body><html><HEAD><title>WEB页面导出为Word文档后分页的方法 </title></HEAD><body><BR><div id="test"><h2>hahha</h2>^bbb^ccc</div><div id="test2"><h2>hahha</h2>bbbccc</div><input id="btn" type="button" value="导出页面指定区域内容到Word"/></body><script>/**//** * @param {Object} cont 要导出的html元素内容的id,注意不要加双引号* @param {Object} key 分页关键字*/function AllAreaWord(cont,key){var oWD = new ActiveXObject("Word.Application");//默认为页面视图var oDC = oWD.Documents.Add("", 0, 0);var oRange = oDC.Range(0, 1);//var oRange1 = oDC.Range(0,2);var sel = document.body.createTextRange();//参数为html元素id sel.moveToElementText(cont);sel.select();sel.execCommand("Copy");oRange.Paste();oWD.Application.Visible = true;//得到打开后word的selection对象var selection = oWD.Selection;//设置字体大小selection.Font.Size = 10;//ctrl+A 全选操作selection.WholeStory();//清除格式selection.Find.ClearFormatting();//指定查找关键字selection.Find.Text = key;//^m为手动分页符标记//向下查找selection.Find.Forward = true;selection.Find.Wrap = 1;//不区分大小写selection.Find.MatchCase = false;//不匹配整个单词selection.Find.MatchWholeWord = false;//如果找到指定字符串返回真,否则返回falsewhile (selection.Find.Execute()) {//插入分页符,分页符常量为7,具体可查word apiselection.InsertBreak(7);}}var btn = document.getElementById('btn')if (!!window.ActiveXObject || "ActiveXObject" in window){btn.onclick = function(){AllAreaWord(document.getElementById('test'),'^')}}else{btn.onclick = function(){$("#test2").wordExport("客户评价");}}</script>
</html>
</body>
</html>
纯前端导出word文档相关推荐
- vue前端html页面导出word文件,Vue-纯前端导出word文档
在项目中,我们可以借助后端返回文件流实现文件下载.如果前端有数据,也可以借助前端框架进行下载.本文将介绍如何在前端纯js实现word文档导出. 1. 组件介绍 要实现前端纯js导出word文档,我们需 ...
- vue项目+element表格前端使用纯js导出word文档
详细请读https://www.jianshu.com/p/0de31429b12a这篇文章 首先安装各种工具: -- 安装 docxtemplater cnpm install docxtempla ...
- Vue-纯前端导出word文档 Can‘t find end of central directory:is this a zip file?
其实好多文章都有介绍 我这里就把自己遇到的一个奇葩问题记录一下: 归根结底就是不要直接通过改变文件后缀名来企图创建一个word.docx文件: 首先 -- 安装 docxtemplater npm i ...
- 纯前端导出word、pdf、excel、txt、svg文档方法与技巧(附带问题总结)
文章目录 导出pdf **实现思路:** **问题总结:** **具体代码** **封装好的导出函数,记得引入js插件** 封装方法一: 封装方法二: 封装方法三: 纯前端导出word文档方法与技巧 ...
- vue element ui 利用xslx导出文档表格功能(纯前端导出下载文档)
目录 前言 步骤: 1.下载xslx 2.导入xslx 3.template中给个点击事件 4.methods中定义函数实现导出 前言 本篇文章记录纯前端导出下载文档功能. 若想查看从后端接收文件流, ...
- vue 生产word_nodejs(officegen)+vue(axios)在客户端导出word文档
前言 我的项目中有一个需求:点击按钮生成可编辑的word文档订单详情的信息 我使用的前端框架是Vue.js.后台使用的是node.js node.js生成和导出word文档我参考的是下面这两篇文章,写 ...
- 利用docx4j完美导出word文档(标签替换、插入图片、生成表格)
最近公司让我实现一个利用原有word模板,导出word文档的功能模块,发现docx4j是个很不错的工具,但是之前从来没有用过,对此并不了解,于是上网查找相关资料,也是非常少之,于是便自己开始摸索. 1 ...
- 【Java实现导出Word文档功能 XDocReport +FreeMarker】
Java实现导出Word文档功能(XDocReport +FreeMarker) 前言 在日常的开发工作中,我们时常会遇到导出Word文档报表的需求,比如公司的财务报表.医院的患者统计报表.电商平台的 ...
- 如何导出word文档
前言 一般导出word,是后台做的功能,如果确实需要前端做,可以借助jQuery的wordexport.js导出word文档 提示:以下是本篇文章正文内容,下面案例可供参考 一.使用步骤 1.引入文件 ...
最新文章
- HDU-2732 Leapin' Lizards 最大流
- 《Python数据科学指南》——1.16 使用lambda创造匿名函数
- cosbench 安装
- docker安装elasticsearch7.6.1、elasticsearch-head
- lintcode:二叉树的层次遍历
- 服务器建网站www无法访问,IIS6服务器搭建网站无法访问解决方案总结_DOIT.com.cn...
- Java笔记-腾讯验证码平台使用实例
- javascript来实现定时器
- bzoj3524: [Poi2014]Couriers / bzoj2223: [Coci 2009]PATULJCI 主席树
- 数万开发者在追的直播,进大咖群和大佬聊天,你只差这个机会!
- 如何在不键入“退出”的情况下退出屏幕?
- 《Java程序员职场全攻略:从小工到专家》连载八:加入什么样的公司
- flame linux mac,Autodesk版蓝宝石插件 GenArts Sapphire V10.0 (Mac/Linux)
- 简述osi参考模型各层主要功能_简述OSI参考模型中各层的主要功能
- 企鹅号发布腾讯创作者社群计划 助力精品打造行业升级
- 用java写布尔矩阵奇偶性
- 计算机买什么固态硬盘,固态硬盘买什么接口好?那么多接口到底选哪种?看完这个秒懂...
- 视频教程-VR 游戏创业中的那些坑-其他
- 启动jenkins解锁后,报错“Failed to update the default Update Site 'default'”
- python平均成绩计算异常处理_【Python 20】BMR计算器4.0(异常处理)
热门文章
- 树莓派--连接蓝牙耳机
- 主题模型(3)——PLSA模型及其EM算法求解
- python selenium 打开浏览器自动闪退
- .NET Core StackExchange.Redis使用方法
- 李开复谈互联网商业模式 李开复和王利芬高端对话
- php yii 锁,Yii2支持MySQL行锁
- 羽毛球发球机改装记录
- LOL自动录制精彩时刻,视频导入、裁切、混剪、合并,简单操作,轻松完成
- 天龙八部宋辽服务器不响应,天龙八部,萧峰就义换宋辽10年太平!却不能掩盖是宋辽罪人的事实...
- SpringBoot整合redis(StringRedisTemplate),操作一个redis服务器的多个库