javascript实现jsp页面的打印预览
2013-11-13 17:00
495 查看
1、加载WebBrowser打印预览控件
或者用超链接添加自定义函数
自定义函数主要实现打印预览去掉页眉页脚
2.设置不打印的元素:设置样式,并添加到不需要展示的元素(class="noprint")
3.【遇到问题】当前网页是通过window.parent.openWindowCanClose(url,title,width,height) ;方式打开的窗口,打印的区域则包括了父窗口,而并不是我们当前设置的子窗口。
我猜想web打印预览方法是基于window对象的,因此想要只是打印子窗口那么必须是另打开一个新网页。
4.【遇到问题】当在本地测试该功能时可以正常预览,但是换在服务器上测试该功能时发现提示【 Internet Explorer 已经阻止此站点用不安全方式使用 ActiveX 控件】
这个是由于浏览器的安全级别设置引发的,最直接的方法就是【添加信任站点】
设置方式:【工具】-【Internet选项】-【受信任的站点】-【站点】-填入网址(若这个网站不是以https:开头,将【对该区域中所有站点要求服务器验证】选项勾选去掉)
<OBJECT classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2" height="0" id="wb" name="wb" width="3"></OBJECT> <input type=button value=打印预览 onclick=document.all.WebBrowser.ExecWB(7,1)>
--------------------------------------WebBrowser控件 --------------------------------------------- <OBJECT id=WebBrowser classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 width=0 VIEWASTEXT></OBJECT> <input type=button value=打开 onclick=document.all.WebBrowser.ExecWB(1,1)> <input type=button value=另存为 onclick=document.all.WebBrowser.ExecWB(4,1)> <input type=button value=全选 onclick=document.all.WebBrowser.ExecWB(17,1)> <input type=button value=属性 onclick=document.all.WebBrowser.ExecWB(10,1)> <input type=button value=关闭窗口 onclick=document.all.WebBrowser.ExecWB(45,1)> <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)>
或者用超链接添加自定义函数
<a href="javaScript:printpreview();" >◆ 打印预览 </a>
自定义函数主要实现打印预览去掉页眉页脚
<script type="text/javascript"> //设置网页打印的页眉页脚为空 var HKEY_Root,HKEY_Path,HKEY_Key; HKEY_Root="HKEY_CURRENT_USER"; HKEY_Path="//Software//Microsoft//Internet Explorer//PageSetup//"; function PageSetup_Null() { try{ var Wsh=new ActiveXObject("WScript.Shell"); HKEY_Key="header"; Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,""); HKEY_Key="footer"; Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,""); }catch(e){} } function printpreview(){ PageSetup_Null(); // 打印页面预览 wb.execwb(7,1); }; </script>
2.设置不打印的元素:设置样式,并添加到不需要展示的元素(class="noprint")
<style media="print" type="text/css"> .Noprint{display:none;} .PageNext{page-break-after: always;} </style>
3.【遇到问题】当前网页是通过window.parent.openWindowCanClose(url,title,width,height) ;方式打开的窗口,打印的区域则包括了父窗口,而并不是我们当前设置的子窗口。
我猜想web打印预览方法是基于window对象的,因此想要只是打印子窗口那么必须是另打开一个新网页。
window.open(url,title,width,height,"_blank");
4.【遇到问题】当在本地测试该功能时可以正常预览,但是换在服务器上测试该功能时发现提示【 Internet Explorer 已经阻止此站点用不安全方式使用 ActiveX 控件】
这个是由于浏览器的安全级别设置引发的,最直接的方法就是【添加信任站点】
设置方式:【工具】-【Internet选项】-【受信任的站点】-【站点】-填入网址(若这个网站不是以https:开头,将【对该区域中所有站点要求服务器验证】选项勾选去掉)
相关文章推荐
- Javascript实现打印JSP页面中的表
- 使用JavaScript实现页面打印
- c#打印预览控件中实现用鼠标移动页面功能代码分享
- jsp页面实现打印功能
- 开源的javascript实现页面打印功能,兼容所有的浏览器(情况属实)
- javascript打印-打印页面设置-打印预览代码
- 使用javascript实现1到100的数依次相加,并将结果打印在页面上
- 基于Metronic的Bootstrap开发框架经验总结(9)--实现Web页面内容的打印预览和保存操作
- 开源:.NET环境下有关打印页面设置、打印机设置、打印预览对话框的实现
- javascript实现把jsp页面“后面的值”写到前面去
- 基于BootStrap Metronic开发框架经验小结【九】实现Web页面内容的打印预览和保存操作
- javascript实现firefox和IE都支持的页面局部打印
- 自定义动态生成页面打印以及打印预览的一个实现例子
- asp.net调用Lodop实现页面打印或局部打印,可进行打印设置或预览
- javascript结合WebBrowser实现打印预览、直接打印、页
- JavaScript 实现打印,打印预览,打印设置
- javascript打印大全(打印页面设置/打印预览代码)
- 开源:.NET环境下有关打印页面设置、打印机设置、打印预览对话框的实现(一)
- jsp页面中用户登录的实现(利用javascript实现非空判断等……)
- NET环境下有关打印页面设置、打印机设置、打印预览对话框的实现(引自flygoldfish的Blog文章)