`

【web】web批量分页打印

    博客分类:
  • web
 
阅读更多
<%@ 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页面批量打印

    分页是批量打印中的关键部分,尤其是当每个报告单需要单独占一页时。在HTML和CSS中,可以使用以下技巧进行分页控制: 1. CSS `@media print` 查询:针对打印媒体类型定义不同的样式,比如设置页眉和页脚,以及分页...

    web中分页和批量处理技术

    在现代Web开发中,分页和批量处理技术是优化用户界面性能、提升用户体验的重要手段。本文将深入探讨这些技术在Web应用中的实现方法与最佳实践。 ### 分页技术 分页技术主要用于处理大量数据时,避免一次性加载过多...

    php批量打印

    在Web环境中,打印通常是通过浏览器的打印功能实现的。用户点击打印按钮后,浏览器会打开一个打印对话框,用户可以选择打印机、设置打印选项,然后开始打印。在PHP中,我们无法直接控制用户的打印机,但可以通过HTML...

    java实现web的打印

    java实现web的打印,可以分页打印,可以批量打印,可以根据格式选择打印

    楚琳Web打印控件

    3. **多页面处理**:如果网页内容超出了单页范围,楚琳Web打印控件会自动处理分页,保证所有内容都能完整打印。 4. **图片和图形支持**:支持打印网页中的图片和其他图形元素,确保打印效果清晰。 5. **预览功能**...

    阿里云存储OSS操作示例(单、批量上传、删除、分页预览)

    在这个ASP.NET WEB版的阿里云操作示例中,用户可以学习如何通过编程接口进行OSS的各种操作,包括单文件上传、批量上传以及分页预览等关键功能。下面将详细介绍这些知识点。 1. **单文件上传** 单文件上传是指将一...

    WEB打印控件Lodop技术手册DEMO

    5. **批量打印**:一次可以处理多个打印任务,适用于需要批量打印的业务场景。 **三、Lodop的JavaScript API** Lodop的JavaScript API是其强大的核心,通过调用这些API,开发者可以实现各种复杂的打印功能。例如:...

    jsp 批量修改, 分页

    本话题将深入探讨如何利用JSP实现数据的批量修改以及分页功能。 批量修改是Web应用程序中常见的需求,尤其在管理大量数据时,能够一次性更新多条记录可以极大地提高效率。在JSP中,批量修改通常涉及以下几个步骤: ...

    使用Oracle数据库时的Web分页方法

    在使用Oracle数据库构建Web应用程序时,分页是提高用户体验的关键技术。这主要涉及到从大量数据中筛选出用户关心的部分,并以合适的数量展示在每个页面上。分页不仅可以优化页面加载速度,还可以帮助用户更容易地...

    java 分页、批量删除

    Java 分页和批量删除是Web开发中的两个重要概念,尤其在大数据量的后台管理系统中,它们对于提升用户体验和优化数据库操作至关重要。以下是对这两个主题的详细讲解。 **分页** 分页是网页显示大量数据时常用的一种...

    分页技术、批量插入查找

    在Web开发中,分页技术和批量插入查找是两个非常重要的概念,它们对于提高用户体验和优化数据库性能具有关键作用。下面将详细阐述这两个知识点,并结合`person1.sql`和`Mybatis`来说明如何在实践中应用。 分页技术...

    基于Lodop控件的Web打印

    7. **批量打印**:用户可以一次性选择多个文件进行打印,尤其适用于批量处理类似报告或发票的场景。 在提供的压缩包文件中,`install_lodop.exe`是Lodop控件的安装程序,用户可以通过运行此程序在本地计算机上安装...

    js web 打印 第三方打印控件免费版本

    7. **批量打印**:可以一次处理多个打印任务,方便批量操作。 Lodop的安装通常涉及到两个步骤:下载和注册。在提供的压缩包文件中,我们看到有"Lodop6.132.zip"和"Lodop6.1Notebook.zip"两个文件。前者可能是Lodop...

    MySql+SSH的分页及批量删除示例

    在这个示例中,我们将深入探讨如何利用MySQL实现分页查询以及如何进行批量删除,这对于提高用户体验和优化数据管理至关重要。 分页查询是大型数据集展示的关键技术,它允许用户逐步加载和浏览大量的信息,而不会一...

    ssm增删改查、分页、批量删除、小实例

    SSM(Spring、SpringMVC、MyBatis)是一个经典的Java web开发框架组合,它将Spring的核心容器、Spring的Web MVC模块以及MyBatis持久层框架整合在一起,为开发者提供了强大的服务。在这个小实例中,我们将探讨如何...

    通用的JSP分页+增删改查+批量删除

    【标题】"通用的JSP分页+增删改查+批量删除" 是一个Web开发中的常见需求,尤其是在处理大量数据时,为了提高用户体验和系统性能,通常会使用分页来展示数据。在这个主题中,我们将深入探讨如何在JavaServer Pages ...

    基于ASP.NET缓存与分页策略优化Web数据查询性能

    在实现基于ASP.NET缓存与分页策略的优化模型时,首先,可以创建一个存储过程,用于批量获取某一页的数据。然后,利用ASP.NET缓存机制,在用户首次请求时,调用存储过程获取多页数据并存入缓存。后续的分页请求则直接...

Global site tag (gtag.js) - Google Analytics