网上流传了大量大量的如何导出,结果都不太实用。
网上流传通用的js导出word代码如下:
function method1(){
var oWD = new ActiveXObject("Word.Application");
oWD.WindowState = 2;
var oDC = oWD.Documents.Add("",0,1);
var oRange =oDC.Range(0,1);
var sel = document.body.createTextRange();
sel.moveToElementText(huahai); //里面参数为div的id或者form的id或者table的id或者...表示将此范围内输出word
sel.select();
sel.execCommand("Copy");
oRange.Paste();
oWD.Application.Visible = true;
}
<body>
<div id="huahai">
</div>
</body>
<input type="button" onclick="javascript:method1();" value="导出为WORD">
以上方法可导出任意jsp(包括图片)但是除了以下内容:
凡是让用户输入带有<input>或者<textarea>等等等标签输入框地方就不能导出成word了。
比如一个table(如下所示),如果使用上述办法就不能导出。
如果去掉<input>标签那么就可以导出,但是问题就是我就是要全部导出.......
<table id="table1">
<tr>
<td>姓名</td><td><input type="text" size="5"></td>
<td>年龄</td><td><input type="text" size="5"></td>
</tr>
<table>
解决办法:
下面给出一个JSP,里面包含div、form、table、image、以及各种<input>标签导出为word
<%@ page language="java" import="java.util.*" contentType="text/html; charset=UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body>
<form action="" id="huahai" >
<div align="center">
<div align="center" id="div_content">
<h2>
<font color="red">测试导出word</font>
</h2>
<h4>
<font color="red">测试导出word</font>
</h4>
</div>
<table id="table1">
<tr>
<td>姓名</td><td><input type="text" size="5"></td>
<td>年龄</td><td><input type="text" size="5"></td>
</tr>
<table>
<div id="img">
<hr/>
<img src="MM.jpg" height="45%" width="30%">
</br>
</div>
<div id="text_area">
<textarea name="warn_task" wrap="off" cols="80" rows="12">区域内容:</textarea>
</textarea>
<hr />
</div>
<input type="button" onclick="javascript:test();" value="测试">
</div>
</form>
</body>
</html>
下面给出js代码(加入<head>标签之间):
<script type="text/javascript">
var oWD = new ActiveXObject("Word.Application");
var oDC = oWD.Documents.Add("",0,1);
var oRange =oDC.Range(0,1);
function word(id,way){
var sel = document.body.createTextRange();
sel.moveToElementText(id);
sel.select();
sel.execCommand(way);
oRange.Paste();
}
function test(){
var table=document.getElementById('table1');
var table_cells = table.rows[0].cells;
var form_elements = document.getElementById('huahai');
word(div_content,'Copy'); //调用word函数,将div_content范围内容拷贝到word里面。
for(i=0;i<table_cells.length;i++){
oRange =oDC.Range(oRange.End-1,oRange.End); //设定位置依次由上往下、从左往右
var sel = document.body.createTextRange();
sel.moveToElementText(table_cells[i]); //将单元格内容复制到word
sel.select();
sel.execCommand("Copy");
sel.moveEnd('character'); //不加这句导出不了,里面参数为character、不是copy
oRange.Paste();
oRange =oDC.Range(oRange.End-1,oRange.End);
}
oRange =oDC.Range(oRange.End-1,oRange.End); //复制不同的东西,需要写这句继续 写死的这句话就是位置
var img = document.getElementById('img');
word(img,'Copy');//将img范围内容拷贝到word里面。
oRange =oDC.Range(oRange.End-1,oRange.End);
var text_area = document.getElementById('text_area');
word(text_area,'Copy');//将text_area范围内容拷贝到word里面。
oRange =oDC.Range(oRange.End-1,oRange.End);
oWD.Application.Visible = true; //这句意思是所有操作完毕后,在显示出来,如果写在里面,会发现word打开后,什么标签啊、内容啊就跟打字机一样往里面填
}
</script>
最后补充:IE工具设置,安全--启动-对没有标记为安全的Activex的控件进行初始化和脚本运行
分享到:
相关推荐
本篇文章将详细探讨如何在JSP(JavaServer Pages)环境中,通过JavaScript实现Word和Excel的导出功能。 首先,我们需要理解JSP和JavaScript的角色。JSP是一种动态网页技术,它允许开发者在HTML页面中嵌入Java代码,...
本文档将详细介绍如何在MyEclipse环境中,通过JavaScript(简称JS)实现从JSP页面中提取表格数据,并将其导出至Microsoft Word文档的功能。此外,我们还将探讨如何在Word文档中自动生成目录,方便用户快速定位文档中...
总结来说,通过结合JSP和Apache POI,我们可以创建一个动态的、基于用户输入的Word文档导出功能。这使得开发者能够方便地将Web应用程序的数据以用户熟悉的Word格式导出,提高用户体验。不过,实际应用中,需要根据...
总的来说,通过JSP结合Apache POI库,我们可以轻松地实现在Web应用中生成并导出Word文档的功能,这在报告生成、数据导出等场景下非常实用。然而,需要注意的是,由于Word文档格式的复杂性,这种方式可能无法实现所有...
本篇文章将详细介绍如何使用Java Server Pages(JSP)技术来导出Word文档,通过实例分享一些实用技巧。 首先,我们需要了解JSP与Word交互的基本原理。JSP是一种动态网页技术,它可以生成HTML或其他类型的文档,包括...
在JSP中生成Word文档可以通过设置正确的`content-type`来实现。具体来说,只需要在JSP页面的头部添加以下指令: ```jsp <%@page contentType="application/msword" pageEncoding="GBK"%> ``` 这样设置后,当用户...
标题“利用JSP将数据导出到Word文档”涉及到的是在Web开发中如何使用Java Server Pages(JSP)技术来生成动态的Word文档。这种功能通常用于数据报告、记录保存或者用户需要下载结构化信息的场景。下面我们将深入探讨...
总之,JSP导出Excel和Word是常见的功能需求,通过Apache POI库可以轻松实现。正确设置响应头和使用流处理可以确保文件能被正确下载,同时根据实际需求调整数据处理和样式设置,能够创建符合业务需求的导出文件。
当你需要在JSP页面上实现“点击导出数据”功能时,实际上就是构建一个文件下载功能,让用户能够通过点击按钮来下载服务器上的数据。这个过程涉及到几个关键步骤,包括前端交互、后端处理以及文件流的控制。以下将...
### jsp页面中的Table数据导出为Word文档 在日常工作中,经常需要将网页上的数据导出...通过以上步骤,可以实现从JSP页面中的Table数据导出到Word文档的功能。开发者可以根据实际需求调整代码,以适应不同的应用场景。
java aspose word 上传到服务器 导出的word 中文字体乱码 的问题 java aspose java aspose word 上传到服务器 导出的word 中文字体乱码 的问题 java aspose java aspose word 上传到服务器 导出的word 中文字体乱码 ...
通过以上步骤,我们可以利用Java和FreeMarker实现列表的嵌套导出,从而创建结构复杂的Word文档。在实际项目中,可能还需要考虑性能优化、错误处理等问题,确保程序的稳定性和效率。对于更复杂的需求,可能需要借助...
"jsp页面数据通过excel导出"这个主题就是关于如何在Java Web应用程序中利用JSP(JavaServer Pages)技术和Apache POI库将动态生成的数据导出为Excel文件。Apache POI是一个强大的API,它允许开发者读写Microsoft ...
总的来说,通过使用jQuery插件和适当的代码优化,可以在包括IE8在内的多种浏览器中实现JSP内容导出到Word的功能。尽管这个过程涉及到一些技术挑战,但遵循上述步骤和最佳实践,可以有效地解决这个问题。
这个压缩包“Java通过word编辑为xml和ftl格式的模板创建导出word文档 .zip”提供了一个示例项目,用于演示如何使用Java编程语言来操作Word文档,并将其内容转化为XML和FTL(FreeMarker)模板格式。以下将详细介绍这...
在本例中,我们将探讨如何利用JSP来导出内容到Microsoft Word文档(.doc或.docx格式),并生成一个工作文档。 首先,我们需要了解JSP页面导出到Word的基本步骤: 1. **新建Word文档**:这通常是指在开发环境中创建...
**JSP Struts2 分页 导出Excel** 在Web开发中,经常需要处理大量数据,这时分页显示和导出功能就显得尤为重要。JSP(JavaServer Pages)和Struts2作为Java Web开发中的常见技术,可以帮助我们构建动态、交互的网页...
在JSP页面上,你可以使用表单提交或者JavaScript AJAX请求触发导出操作。例如,一个简单的表单提交: ```jsp 导出Excel ``` 5. **安全性和性能优化** 当处理大量数据时,注意内存管理和性能优化。可以...
在这里,通过使用JQUERY+JQUERY UI+JSON-LIB+POI实现这个功能数据导出设计:通过使用JQUERY分析表格的结构,读取表格结构数据构建JSON字符串,发送到后台,后台分析表格结构,然后生成Excel数据. 本程序基于是...
本案例中,我们主要探讨如何通过一段JavaScript代码实现将JSP页面中的表单信息自动导入到Word文档,并展示具体实现方法。 ### 二、技术选型 1. **JSP (JavaServer Pages)**:用于构建动态网页。 2. **JavaScript**...