看到网上对window.print的使用的讲解,觉得原始的方法只能打印一次,因为第一次打印后液面就发生变化
不再是初始页面,打印按钮等等往往也就不存在了,故小小改进
- <html>
- <head>
- <title></title>
- </head>
- <script language="javascript" type="text/javascript">
- function preview()
- {
- var bdhtml=window.document.body.innerHTML;
- var sprnstr="<!--startprint-->";//开始标记
- var eprnstr="<!--endprint-->";//结束标记
- //保存打印时不需要的数据
- var beforePrnHtml = bdhtml.substr(0,bdhtml.indexOf(sprnstr)+17);
- var afterPrnHtml = bdhtml.substr(bdhtml.indexOf(eprnstr));
- //提取欲打印的数据
- var prnhtml=bdhtml.substr(bdhtml.indexOf(sprnstr)+17);
- var prnhtmlprnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr));
- window.document.body.innerHTML=prnhtml;
- //打印
- window.print();
- //恢复页面,可再次打印
- window.document.body.innerHTML=beforePrnHtml + prnhtml + afterPrnHtml;
- }
- </script>
- <body>
- <form id="form1" runat="server">
- 打不着我!!!
- <table width="768px">
- <tr>
- <td width="100%">
- <!--startprint-->
- <table width="100%">
- <tr>
- <td align="center" >
- 打我
- </td>
- </tr>
- <tr>
- <td>
- 打我
- </td>
- </tr>
- </tr>
- </table>
- <!--endprint-->
- </td>
- </tr>
- <tr>
- <td>
- <input type="button" id="btnPrint" value="Print" onclick="preview()">
- <span>还打不着我!!!<span>
- </td>
- </tr>
- </table>
- </form>
- </body>
- </html>