主要思路:用js寫的窗口在jsp中打印
要打印的窗口用js實現(比如print.js),點擊窗口上的“打印”按鈕進入jsp頁面(如print.jsp),在jsp中關聯該js
(關聯分兩塊:分別為2.(1)和2.(2)所示)
1、其中js中“打印”按鈕的代碼(print:function () {
window.location.href="print.jsp"
},)
2、print.jsp的代碼
(1)<script type="text/javascript" src="print.js"></script>
添加到print.jsp的<head></head>中間,(關聯要打印窗口的js)
(2)、
<center class="Noprint"> //該處為不打印下面的各個按鈕
<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) type=button value=打開>
<input name=Button onClick=document.all.WebBrowser.ExecWB(2,1) type=button value=關閉所有>
<input name=Button onClick=document.all.WebBrowser.ExecWB(4,1) type=button value=另存為>
<input name=Button onClick=document.all.WebBrowser.ExecWB(6,1) type=button value=打印>
<input name=Button onClick=document.all.WebBrowser.ExecWB(6,6) type=button value=直接打印>
<input name=Button onClick=document.all.WebBrowser.ExecWB(7,1) type=button value=打印預覽>
<input name=Button onClick=document.all.WebBrowser.ExecWB(8,1) type=button value=頁面設置>
<input name=Button onClick=document.all.WebBrowser.ExecWB(10,1) type=button value=屬性>
<input name=Button onClick=document.all.WebBrowser.ExecWB(17,1) type=button value=全選>
<input name=Button onClick=document.all.WebBrowser.ExecWB(22,1) type=button value=刷新>
<input name=Button onClick=document.all.WebBrowser.ExecWB(45,1) type=button value=關閉>
//這些屬性都是系統定義好的,直接調用就可以了,上述代碼直接粘貼到print.jsp的<body></body>中間
</center>
<div id="printForm"></div>
//var printForm = new Ext.FormPanel({ (printForm為print.js的面板名稱)
// renderTo:"printForm",(渲染到該容器,<div id=“”></div>中的引用即為該值)
// .....(下面的代碼為print.js中的代碼,省略...)
(3)、 <style media="print">
.Noprint {DISPLAY: none;}
</style>
上述代碼放在print.jsp的<head></head>中間,主要用于不打印“打開”“關閉所有”“另存為”等按鈕
若點擊按鈕出現“瀏覽器已經阻止此站點用不安全方式使用ActiveX控件”,只需在瀏覽器的“工具”——Internet選項——安全——自定義級別, 將“安全設置”中“對沒有標記為安全的ActiveX”控件進行初始化和腳本運行由“禁用”改為“啟用”即可
OK,按照上面的設置完就可以打印了,Good Luck!
只需要粘黑色部分就可以,藍色為說明,下面為該實例的效果圖: