1.使用window.print()方法

优点:支持多浏览器
缺点:取消打印,隐藏打印不必要的信息后再显示比较麻烦
如下实现,可以打印当前页面
<input name ="Button"  value="火狐谷歌打印" type="button" onclick="window.print()" />
2.使用第三方插件的功能进行打印,eg:ireport报表插件
优点:支持多浏览器
缺点:实现起来比较麻烦

3.调用ie内置打印控件IEWebBrowser实现打印功能
优点:针对ie功能强大
缺点:只支持ie


<%@ page language ="java" import="java.util.*" pageEncoding="utf-8" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://" +request.getServerName()+":"+request.getServerPort()+path+ "/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href =" <%=basePath%> ">
<title> My JSP 'print.jsp' starting page</title >
<meta http-equiv ="pragma" content="no-cache" >
<meta http-equiv ="cache-control" content="no-cache" >
<meta http-equiv ="expires" content="0" >
<meta http-equiv ="keywords" content="keyword1,keyword2,keyword3" >
<meta http-equiv ="description" content="This is my page" >
<!-- 打印时下列方法生效 -->
<style media ="print" >
<!--
. Noprint{display: none;}
.PageN ext{pag e-break-after:always;}
-->
</style>
<style type ="text/css" >
<!--
.STYLE1 {font-size : 12px }
-->
</style>
</head> <body>
<br>
<table border ='8' width="500" height="500" >
<tr> <td>haha</td><td>haha</td><td>haha</td><td>haha</td></tr>
<tr><td></ td><td></ td><td></ td><td></ td></tr>
<tr><td></ td><td></ td><td></ td><td></ td></tr>
</table>
<p class ="dis" align="center" >
<OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0
id= "WebBrowser" width=0>
</OBJECT>
<input name =Button onClick=document.all.WebBrowser.ExecWB(1,1) class="Noprint" type=button value=打开 />
<input name =Button onClick=document.all.WebBrowser.ExecWB(2,1) class="Noprint" type=button value=关闭所有 >
<input name =Button onClick=document.all.WebBrowser.ExecWB(4,1) class="Noprint" type=button value=另存为 >
<input name =Button onClick=document.all.WebBrowser.ExecWB(6,1) class="Noprint" type=button value=打印 >
<input name =Button onClick=document.all.WebBrowser.ExecWB(6,6) class="Noprint" type=button value=直接打印 >
<input name =Button onClick=document.all.WebBrowser.ExecWB(7,1) class="Noprint" type=button value=打印预览 >
<input name =Button onClick=document.all.WebBrowser.ExecWB(8,1) class="Noprint" type=button value=页面设置 >
<input name =Button onClick=document.all.WebBrowser.ExecWB(10,1) class="Noprint" type=button value=属性 >
<input name =Button onClick=document.all.WebBrowser.ExecWB(17,1) class="Noprint" type=button value=全选 >
<input name =Button onClick=document.all.WebBrowser.ExecWB(22,1) class="Noprint" type=button value=刷新 >
<input name =Button onClick=document.all.WebBrowser.ExecWB(45,1) class="Noprint" type=button value=关闭 >
</p>
</body>
</html>

html或jsp实现打印三种方法的更多相关文章

  1. struts2中的jsp值传到后台action接收的三种方法

    struts2中的Action接收表单传递过来的参数有3种方法: 如,登陆表单login.jsp: <form action="login" method="pos ...

  2. 打印web页面指定区域的三种方法

    本文和大家分享一下web页面实现指定区域打印功能的三种方法,一起来看下吧. 第一种方法:使用CSS 定义一 个.noprint的class,将不打印的内容放入这个class内. 代码如下: <s ...

  3. jsp值传到后台Struts2中的action三种方法

    Action接收表单传递过来的参数有3种方法: 如,登陆表单login.jsp: <form action="login" method="post" n ...

  4. Tomcat部署发布JSP应用程序的三种方法 (转)

    Tomcat部署发布JSP应用程序的三种方法     1.直接放到Webapps目录下      Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应 ...

  5. Java/JSP获得客户端网卡MAC地址的三种方法解析

    java/jsp获得客户端(IE)网卡MAC地址的方法大概有三种. 1.通过命令方式,在客户端执行Ipconfig 等等.(java/jsp) 2.通过ActiveX的方法.(jsp) 3.通过向13 ...

  6. JAVA之线程同步的三种方法

    最近接触到一个图片加载的项目,其中有声明到的线程池等资源需要在系统中线程共享,所以就去研究了一下线程同步的知识,总结了三种常用的线程同步的方法,特来与大家分享一下.这三种方法分别是:synchroni ...

  7. Java中获取键盘输入值的三种方法

    Java中获取键盘输入值的三种方法     Java程序开发过程中,需要从键盘获取输入值是常有的事,但Java它偏偏就没有像c语言给我们提供的scanf(),C++给我们提供的cin()获取键盘输入值 ...

  8. 利用Objective-C运行时hook函数的三种方法

    版权声明:转载请注明出处:http://blog.csdn.net/hursing 方法一,hook已有公开头文件的类: 首先写一个Utility函数: #import <objc/runtim ...

  9. struts2 Action 接收参数的三种方法

    刚学Struts2 时 大家可能遇到过很多问题,这里我讲一下Action 接收参数的三种方法,我曾经在这上面摔过一回.所以要警醒一下自己..... 第一种:Action里声明属性,样例:account ...

随机推荐

  1. cocos2d-x Android 环境搭建问题汇总

    初次接触Cocos2d-x,准备搭建一个hello world的Android环境,问题遇到很多.在此记录,为自己,也为大家,避免重走弯路! 具体的环境搭建,可以参考官方的文档.在Windows7平台 ...

  2. mount 挂载光盘

    mount作用 挂载光盘镜像文件.移动硬盘.U盘以及Windows网络共享和UNIX NFS网络共享 mount [-t vfstype] [-o options] device dir mount ...

  3. php Imagick库readImage()报Postscript delegate failed 解决方法(失效)

    需要安装 ghostscript http://www.ghostscript.com/download/gsdnld.html

  4. apache2.4配置虚拟目录

    刚开始学习,跟着韩顺平老师的视频课件学习ing~ 这是自己在配置虚拟目录时遇到的问题以及解决办法,记录下来~ ---------------------------分割线君-------------- ...

  5. strtotime 的几点不同

    在php里面,strtotime()有点比较特殊,date函数也有点问题 if ( date(1,time()) == "Monday")    //似乎 date(1,time( ...

  6. ListView item 中TextView 如何获取长按事件

    昨天晚上小伙伴突然来信, ListView item中嵌套的TextView 无法获取长按事件 从前从来没有仔细留意过, coding后发现...果然没什么动静 而且没有合适的API让我调用获取Tex ...

  7. dotnet core开发体验之开始MVC

    开始 在上一篇文章:dotnet core多平台开发体验 ,体验了一把dotnet core 之后,现在想对之前做的例子进行改造,想看看加上mvc框架是一种什么样的体验,于是我就要开始诞生今天的这篇文 ...

  8. Axure RP的版本控制

    首先介绍一下Axure RP,Axure的发音是Ask-Sure,RP是Rapid Prototype的缩写,写到这里你知道了这是一款原型绘画工具.本节主要介绍Axure RP的版本管理也即Axure ...

  9. 把Blob 转化为字符串查询。

    在Oracle里面,有时候我们对于clob或者是blob作为varhcar2来查询. Clob可以直接使用 to char函数来转换. Blob就需要用 UTL_RAW.CAST_TO_VARCHAR ...

  10. 转载百度百科上的强回复,关于spring的IOC和DI

    IoC与DI   首先想说说IoC(Inversion of Control,控制倒转).这是spring的核心,贯穿始终.所谓IoC,对于spring框架来说,就是由spring来负责控制对象的生命 ...