`
starbhhc
  • 浏览: 632917 次
  • 性别: Icon_minigender_2
  • 来自: 深圳
社区版块
存档分类
最新评论

JSP页面打印方法(一)

 
阅读更多

JSP页面打印方法

方法一:
function PrintTable(Id){
                 var mStr;
                 mStr = window.document.body.innerHTML ;
                 var mWindow = window;               
                 window.document.body.innerHTML =Id.innerHTML;
                 mWindow.print();
                 window.document.body.innerHTML = mStr;
         }

在页面中要打印
<div id="dy">
.......
</div>
<input type="button" value="打    印" onclick="return PrintTable(dy)">

方法二:

with (document)
{//输出样式表表及IE打印控件
         write ("<style type=\"text/css\" media=\"print\">");
         write ("   .noPrint{visibility:hidden}");
         write ("</style>");
         write ("<OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WB width=0></object>");
}
function doPrintSetup()
{//打印设置
         WB.ExecWB(8,1);
}
function doPrintPreview()
{//打印预览
         WB.ExecWB(7,1);
}
function doPrint()
{
         window.print();
}
function showPrintBar()
{
         with (document)
         {
                 write ("<div align=\"center\" class=\"noprint\">");
                 write ("   <input type=\"button\" name=\"doBack\" value=\" <<返回   \" onClick=\"history.go(-1)\">");
                 write ("   <input type=\"button\" name=\"doPrintPreview\" onClick=\"WB.ExecWB(8,1)\" value=\"打印设置\">");
                 write ("   <input type=\"button\" name=\"doPrint\" value=\"   打印>> \" onClick=\"doPrint()\">");
                 write ("</div>")
         }
}

----------------print.js end------------

页面中使用时:
<script language="JavaScript" type="text/JavaScript" src="print.js"></script>
然后再需要输出打印按钮时:
<script>showPrintBar()</script>

方法三:
打印前把按钮隐藏
<tr><td><input type="button" value="打 印" name="butt" onClick="javascript:hide()"></td></tr>

<script language="javascript">
                 function hide()
                 {
                    document.all.item("butt").style.display="none";
                  
                    window.print();                               
                   }
</script>

方法四:
<style>
@media print{
.noprint{display:none}
}
</style>
给不打印的区加这个CSS就可以了,在页面上能看见但打印的时候看不到!

方法五:
利用脚本控制打印,可以采用如下方法:
1、execCommand()方法
Print 打开打印对话框以便用户可以打印当前页
即document.execCommand('Print');

2、window.print()

3、   <OBJECT   id=WebBrowser   classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2   height=0  width=0>
   </OBJECT>
   <input   type=button   value=打印           onclick=document.all.WebBrowser.ExecWB(6,1)>
   <input   type=button   value=直接打印   onclick=document.all.WebBrowser.ExecWB(6,6)>
   <input   type=button   value=页面设置   onclick=document.all.WebBrowser.ExecWB(8,1)>
   <input   type=button   value=打印预览   onclick=document.all.WebBrowser.ExecWB(7,1)>

方法六:

<style media="print">
     .noPrint { display: none }
   </style>
   <style media="screen">
      .print { display: none }
</style>
<html>
<title></title>

<body>


<table width="100%" class="noPrint" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="60" align="center">
<input type=button name=button_show value="打     印" onclick="print();">
<input type=button name=button_show value="打印预览" onclick="preview();">
<input type=button name=button_setup value="打印设置" onclick="pageSetup();">
</td>
</tr>
</table>

</body>
<object id="factory" style="display:none" viewastext
classid="clsid:1663ed61-23eb-11d2-b92f-008048fdd814"
codebase="/etsc/ActiveX/ScriptX.zip#Version=6,1,430,5">
</object>
<script language="javascript" >
         function pageSetup()
         {
                 factory.printing.PageSetup();
         }
         function preview()
         {
                 setPageInfo();
                 factory.printing.Preview();
         }
         function print()
         {
                 setPageInfo();
                 factory.printing.Print(true);
         }

         function setPageInfo(){
                 //factory.printing.header = "&b&b第&p页/共&P页"
                 //factory.printing.footer = "&b&b时间:&D&T"
                 factory.printing.footer = ""
                 factory.printing.leftMargin = 10
                 factory.printing.topMargin = 20
                 factory.printing.rightMargin = 10
                 factory.printing.bottomMargin = 20
         }
</script>
</html>

 

打印背景设置:
默认情况下,使用IE浏览器打印网页时,不打印网页背景。如果需要打印网页背景,可以采用如下的方法设置:
  1. 启动IE浏览器。
  2. 选择【工具】菜单中的【Internet选项】菜单项,打开【Internet选项】对话框。
  3. 打开【高级】选项卡,在【打印】选区中选择【打印背景颜色和图像】复选框。
  4. 单击【确定】按钮,关闭对话框。


用IE打印网页:

 

 

Internet Explorer(简称IE)5.0以上版本强大的打印及打印预览功能。本文就向大家介绍如何用IE来打印网页。(谁?谁?谁在扔西红柿?下面一片嘘声:这还用得着你讲呀?!)咳咳咳,是的是的,在IE中打印网页实在是太简单不过了。只需点一下工具栏上“打印”按钮就可将当前网页打印出来。如下图所示:

 

不过,你这样打出来的效果怎么样呢?我就不敢说了。我今天要和大家讲的就是一些打印方面的设置参数。如何大家把这些参数设置好,你就会发现IE的打印功能快追得上Word了。今后你打印网页时就可以想怎么打就怎么打了。好,闲话少说,现在就跟我来一起看看怎么样设置IE的打印参数。
我们以下图要打印的学生名单(《学生学籍管理系统MX》查询结果网页)为例,讲解如何设置这些打印参数:

 

假如我们直接点工具栏的“打印”按钮或点“文件”菜单中的“打印”进行打印这个网页的话,就会打印出很多不必要的信息。所以在打印前我们应先用IE5新增的“打印预览”功能查看当前网页的实际打印效果。如下图所示:

 

在如下图所示的“打印预览”对话框中,我们可以看到,网页标题、网页的URL地址及打印日期等我们所不需要的信息也被打印出来了。而页码又在右上角,能不能把它移到其他位置(如我们常见的右下角)呢?

 

能不能按照我们所想要的样式来打印网页呢?当然可以。一切就在“页面设置”中。

 

弹出如下图所示的“页面设置”对话框,所有的秘密都在这里!

 

原来,IE自动给我们在页眉和页脚处加上了这些不必要的打印信息。如果我们不想要任何页眉和页脚的话,直接删除它们就行了。:-)大部分时候我都是这样做的。

 

但如果你想自定义页眉和页脚的时候,该怎么做呢?上面的那些“&w&b&p”等等究竟表示什么意思呀?给你个表格就知道了。 

符号含义:

&w 网页标题
&u 网页地址 (URL)
&d 短日期格式(由“控制面板”中的“区域设置”指定)
&D 长日期格式(由“控制面板”中的“区域设置”指定)
&t 由“控制面板”中的“区域设置”指定的时间格式
&T 24 小时时间格式
&p 当前页码
&P 总页数
&b 文本右对齐(请把要右对齐的文字放在“&b”之后)
&b&b 文字居中(请把要居中的文字放在“&b”和“&b” 之间)
&& 单个 & 号 (&)

注:1、这些符号可以与文字组合使用,如本教程中的“页码,&p/&P”。 
2、页眉和页脚默认是左对齐的,所以IE只提供了右对齐和居中的设置符号。
3、推荐给大家一种设置方法:页眉为空,页脚设为“&b第 &p 页 / 共 &P 页&b”,打印效果为在页脚居中显示“第 1 页 / 共 4 页”的效果。

知道了上面的知识,你就可以打印了。但有时你会发现,网页中的一些图像在打印时不见了。Why?为什么会这样?别着急,IE的默认设置是不打印网页的背景颜色和图像的。您只需进入IE的Internet选项将它选中(打上勾)就行了。具体操作方法是:点IE的主菜单中的“工具”——“Internet选项”——再在弹出的对话框中占击“高级”选项卡,找到“打印背景颜色和图像”一项。如下图所示:

 

然后将上图中红色圈住的选项打上勾,再点“确定”就OK了。

 

至此,我们就完成了对IE的打印设置。接下来,只要我们没有关闭IE,我们就可以一直使用上述设置(最后一项“打印背景颜色和图像”的更改始终有效)进行打印。打印前一般先进行打印预览,效果满意后再开始打印。

分享到:
评论

相关推荐

    JSP 页面打印实现方法 总结

    里面是 jsp 打印的各种方法实现 简单实用, 供大家下载参考,我从中也学到很多东西

    实现jsp打印的控件

    该控件实现jsp页面内容的打印配置、预览和打印,开发者可以根据需要修改代码实现个性化打印需求。

    JSP打印\JAVA的JSP打印代码

    JSP打印\JAVA的JSP打印代码 1. 在Word或Excel中制作报表的样式。  Excel的行高和列宽单位无法用mm或cm表示。  需要计算。在1024*768下,1CM约为38像素。  以此为基准,可计算并控制报表的行列位置。  2. ...

    页面添加打印功能实例jsp

    打印 页面打印 实例 jsp页面打印 打印功能实例

    jsp实现网页打印(pdf方法)

    将网页中数据表以pdf方式打印,网上发布的相关解决方法都属于互相copy,且不完善,有很多漏洞。当初我在做的时候为此非常头疼,最后查看了很多资料,将次功能最终实现,为方便大众,将个人的例子上传,以供需要的...

    html,jsp操作页面打印例子

    一个简单的页面打印控件,带html和jsp例子,包括打印配置,打印预览,执行打印操作

    jsp页面如何实现web打印

    通过将需要打印的特定部分另建一个页面,然后装入主页面的一个IFrame中,再调用IFrame的打印方法,只打印IFrame中的内容实现的。 如: &lt;iframe visible" name="FrameId" width="100%" height="30%" src=...

    Jsp页面中实现打印打印预览及打印设置

    Noprint样式可以使页面上的打印按钮等不出现在打印页面上,这一点非常重要,因为它可以用最少的代码完成最需要的功能 PageNext样式可以设置分页,在需要分页的地方 &lt;div class= "PageNext "&gt; &lt;/div&gt; 就OK了,呵呵...

    jsp页面打印

    在web页面打印中如何设置页面的页眉页脚,通过注册表修改 包含一个例子设置按钮为隐藏

    java定位打印实例demo,通过jsp来打印

    这个代码可以通过到jsp页面当中来实现定位打印,里面有几条demo每个都可以使用,理清一个类就可以了。

    实现jsp页面里的内容通过Excel打印输出来

    实现jsp页面里的内容通过Excel打印输出来,还能预览页面、制定打印页面的规格等功能。

    web 网页 BS JSP 打印 标签和超市小票

    IE浏览器下打印标签(带表格,可批量快速打印标签,关键是使用:SET COUNTER @1 1和@1=\"1609050010009\"自增长变量)详细看tsctest.jsp, 超市小票请看wordtest1.jsp

    jsp设置页面属性

    在jsp页面中设置及获取当前页面的属性,可以用getServletInfo()方法输出给浏览器

    jquery直接显示jsp返回的数据

    使用jQuery发送异步请求给Servlet,Servlet仍然使用JSP渲染结果,最后由JSP返回html给客户端页面,客户端页面通过jQuery直接把数据显示在页面上。这样就可以在JSP页面上继续使用类似JSTL的标签库来完成数据的显示。

    打印功能(jsp报表)

    有简单的打印功能,并有报表的设计,代码中的数据库连接自己建立。如果你想立即看到效果,请删除里面的代码,并建立jsp页面即可

    有关条码打印功能实现的jsp参考页面

    该也面是我做项目的时候积累下来的,大家可以用来参考有关条码打印的重点部门,注意要下载相关的条码字体库放到C盘的指定文件中,如果有不懂的地方可以和我联系 或发邮件 luwl56@163.com

    使用servlet,jdbc将mysql中数据显示在jsp页面中

    使用servlet,jdbc将mysql中数据显示在jsp页面中

    页面实现预览和打印(页面整体打印和局部打印)

    如何在html和jsp页面中实现预览和打印功能,我查找了一些资料并做了整理改进,压缩包中有两种形式的实现,可以实现页面整体预览和打印,也可以实现局部表格和文档的预览和打印功能。

    适用于jsp页面的非常好用的日历控件

    使用方法:在jsp页面中加入代码&lt;script language="javascript" type="text/javascript" src="calendar/WdatePicker.js"&gt;&lt;/script&gt; ,然后再 onfocus="WdatePicker({dateFmt:'yyyy-MM-dd'})" /&gt;就可以了

    基于jsp的快递系统

    一个源码的快递系统,sql2005+jsp

Global site tag (gtag.js) - Google Analytics