分享
 
 
 

web打印时隐藏按钮及其他信息的方法讨论

王朝other·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

web打印是困扰很多web开发人员的问题。有很多人提出了不同的web打印解决方案,还有很多的商业报表设计器来帮我们(需要付费的,我想很多人不想花这个钱),以前我也写过一篇关于web打印解决方案的文章:

http://blog.csdn.net/precipitant/archive/2005/01/03/238259.aspx

本文不会讨论这个问题。如果大家对于web打印各种解决方案感兴趣,可以阅读上文,或者到互联网上搜索。这方面对文章很多。

本文将提供给大家一个在普通ie打印的情况下,如何在打印的报表中省略掉我们不希望看到的东西,保留想要看到的东西,而对于用户来说又是透明的,这样的一个解决方案。

方案如下:

首先应该养成良好的写程序的习惯,就是将各部分都分别包装起来,一般用span或者div,比如:

<html>

<span id="span1">

……

</span>

<span id="span2">

……

</span>

</html>

假如我们不想打印span2中的内容,在页面上添加这样一段javascript程序:

<script>

//----- 下面是打印控制语句 ----------

window.onbeforeprint=beforePrint;

window.onafterprint=afterPrint;

//打印之前隐藏不想打印出来的信息

function beforePrint()

{

span2.style.display='none';

}

//打印之后将隐藏掉的信息再显示出来

function afterPrint()

{

span2.style.display='';

}

</script>

这样,当用户打印本页的,打印的纸张上,就看不到span2中的内容。而用户根本感觉不到。

更具上面的一个小例子,我们可以有了一点入门了吧,我们只要合理的分割包装整个页面,我们就可以灵活的控制整个页面的打印输出。如果我们在页面上设计了打印按钮,只要这样写就可以了:

<a href="#" onclick="beforePrint();window.print();afterPrint();">打印</a>

另外如果我们想把查询的表格中的某列或某行省略掉可不可以呢?答案是肯定的,不过我们需要做更多的工作,假如我们要隐藏一列。例子代码如下:

<table cellspacing="0" border="1" bordercolor="#000000" class="tableBorder2" cellpadding=0 width="100%">

<tr height="25">

<td valign="center" align="left" name="op_TD" width="18%" class="noticetitle" background="../../images/topbg.gif">&nbsp;操作</td>

<td valign="center" align="left" width="12%" class="noticetitle" background="../../images/topbg.gif">&nbsp;车型</td>

</tr>

<tr>

<td height="23" align="left" class="inputstyle" name="op_TD" >

&nbsp;<a href="cj_forward_mx.asp?cx=CCK231&cj_code=E900&cj=锻工车间&next_gx=锻" target="_blank">明细</a>

&nbsp;<a href="cj_forward_card.asp?cx=CCK231&to_cj_code=E900&to_cj=锻工车间&t_money=840&next_gx=锻" target="_blank">单据</a>

</td>

<td height="23" align="left" class="inputstyle">

&nbsp;CCK231</td>

</tr>

<tr>

<td height="23" align="left" class="inputstyle" name="op_TD" >

&nbsp;<a href="cj_forward_mx.asp?cx=CCK231&cj_code=C430-2&cj=国凯公司&next_gx=工" target="_blank">明细</a>

&nbsp;<a href="cj_forward_card.asp?cx=CCK231&to_cj_code=C430-2&to_cj=国凯公司&t_money=630&next_gx=工" target="_blank">单据</a>

</td>

<td height="23" align="left" class="inputstyle">

&nbsp;CCK231</td>

</tr>

<tr height="23">

<td colspan="2" align="right">合计:907,620.00</td>

</tr>

<tr height="30"><td align=right id="aPrint">

<a href="#" onclick="beforePrint();window.print();afterPrint();">打印</a> &nbsp;

</td></tr></table> f

这段代码中,我们在想要隐藏的那个列的td中都添加了name="op_TD",把下面的javascript代码加入到本页面内,就可以控制name为 op_TD 的所有td在打印时都隐藏起来。代码如下:

<script>

//----- 下面是打印控制语句 ----------

window.onbeforeprint=beforePrint;

window.onafterprint=afterPrint;

//打印之前隐藏不想打印出来的信息

function beforePrint()

{

var opTDS=document.getElementsByTagName('TD');

for(var i=0;i<opTDS.length;i++)

{

if(opTDS[i].name=='op_TD')opTDS[i].style.display='none';

}

aPrint.style.display='none';//隐藏打印按钮

}

//打印之后将隐藏掉的信息再显示出来

function afterPrint()

{

var opTDS=document.getElementsByTagName('TD');

for(var i=0;i<opTDS.length;i++)

{

if(opTDS[i].name=='op_TD')opTDS[i].style.display='';

}

aPrint.style.display='';//显示打印按钮

}

</script>

看了我上面的讲解,我相信大家会有自己的心得了吧,还等什么?自己动手做做吧! 有什么新的想法或疑问,欢迎通过评论或email联系我。northsnow@163.com 或者 ljc@cccar.com.cn

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有