java web 批量打印

现在在页面有一个批量打印的按钮。点击可以打印我所选择的材料(多选),将选择的材料通过打印机打印出来。或者是直接打印一个文件夹里面的所有文档。那位大虾有接触过帮帮忙,万分感... 现在在页面有一个批量打印的按钮。点击可以打印我所选择的材料(多选),将选择的材料通过打印机打印出来。
或者是直接打印一个文件夹里面的所有文档。

那位大虾有接触过帮帮忙,万分感激
展开
 我来答
趣事情
推荐于2016-06-27 · 知道合伙人互联网行家
趣事情
知道合伙人互联网行家
采纳数:517 获赞数:5452
电脑技术,软件开发。移动开发。网站建设相关专业知识。都可以提供解答和相关技术指导。

向TA提问 私信TA
展开全部
实现代码如下:

<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*" errorPage="" %>
<%@ taglib prefix ="s" uri="/struts-tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7"/>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" type="text/css" href="<%=request.getContextPath() %>/css/bid.css"/>
<title>批量打印模板</title>
<script type="text/javascript" language="javascript">
function printOnload(){
var count = <s:property value="uriList.size()"/>;
var index;
for(i = 0;i < count;i++){
index = i + 1;
//把iframe的html挪到div上
document.getElementById('page' + index).innerHTML
= window.frames[0].document.getElementsByTagName('body')[0].innerHTML;
}
}
</script>

<!-- media="print"表示改样式只在打印预览或打印的时候才生效 -->
<style media="print" type="text/css">  
.NOPRINT{display:none;}  
.PageNext{page-break-after: always;}  
.none{}
</style>

</head>

<body onload="printOnload()">
<!-- 根据urlList,生成<div> <iframe><iframe/></div> 这样格式的页面-->
<s:iterator value="uriList" status="status1" id="uri">
<div style="<s:if test='#status1.count != uriList.size()'>page-break-after: always;</s:if>" id="page${status1.count}">
<iframe src="<%=request.getContextPath() %>${uri }"></iframe>
</div>
</s:iterator>
</body>
</html>

首先得构造一个适合打印的页面,然后直接用浏览器的打印功能就可以 :

1、后台request保存了一个List<URLObj>,uri属性表示请求地址

2、该打印demo页面,根据List<URLObj>,用struts2标签在body上构建<div><iframe></iframe></div>,iframe打开的是每一个需要批量打印的页面

3、页面加载完成后,调用printOnLoad函数,把iframe里面的html挪到div上
唯爱多啦梦cQb8a
2012-07-11 · TA获得超过639个赞
知道小有建树答主
回答量:746
采纳率:0%
帮助的人:530万
展开全部
汗。。这个简单啊 你把文件名放到个list里 这个能获取到吧 然后点击打印的时候,直接调参数就好了 java的打印 用js的话 建议你使用
ScriptX.cab,网上查查 有源码例子的
追问
ScriptX.cab可以打印指定的文件吗?有没有实例呢?
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
灬独欢灬
2012-07-11 · 超过18用户采纳过TA的回答
知道答主
回答量:191
采纳率:0%
帮助的人:60.8万
展开全部
这打印功能,是很强大的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wjlvivid
推荐于2018-03-04 · TA获得超过2423个赞
知道小有建树答主
回答量:167
采纳率:0%
帮助的人:208万
展开全部
您好,我有一个开发的需求和你的一模一样,时间很急,麻烦您能不能给个demo代码,参考参考一下,谢谢啦~237432745@qq.com
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lbh5103360
2012-07-10
知道答主
回答量:36
采纳率:0%
帮助的人:5.6万
展开全部
我也不会,如果你会了,通知我,
追问
谢谢支持,我用了javascript算是做好了。空间有
追答
谢啦
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式