【web】web批量分页打印
程序员文章站
2022-07-03 20:53:42
...
<%@ 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上。
推荐阅读
-
一种理论上最快的Web数据库分页方法
-
Microsoft Dynamics CRM 批量上传web资源(非官方WebResourceUtility)并替换实体图标
-
Microsoft Dynamics CRM 批量上传web资源(非官方WebResourceUtility)并替换实体图标
-
Microsoft Dynamics CRM 批量上传web资源(非官方WebResourceUtility)并替换实体图标
-
打印方案之web打印
-
对目前市场上的web打印方法做了些研究心得
-
web 打印功能
-
巧用FileSystem组件实现WEB应用中的本地特定打印
-
C/S架构引用Lodop 如何在C#调用web打印控件Lodop
-
电脑中如何设置HP打印机嵌入式Web服务器EWS权限方法