c# asp.net webform web页面打印,可以控制需要打印和不需要打印的位置

html页面的web打印示例

Html代码

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml" >
  3. <head>
  4. <title>无标题页</title>
  5. <script id=Script1 language=javascript>
  6.     <!--  
  7.     function preview()  
  8.     {  
  9. bdhtml=window.document.body.innerHTML;  
  10. sprnstr="<!--startprint-->";  
  11. eprnstr="<!--endprint-->";  
  12. prnhtml=bdhtml.substr(bdhtml.indexOf(sprnstr)+17);  
  13.         alert(prnhtml);  
  14. prnhtmlprnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr));  
  15. window.document.body.innerHTML=prnhtml;  
  16.         window.print();  
  17.     }   
  18.     -->
  19. </script>
  20. </head>
  21. <body>
  22. <form id="WebForm1" method="post" runat="server">
  23. 黑色头发不被打印位置 一  
  24. <center>本部分以上不被打印</center>
  25. <!--startprint-->
  26. <div align="center">
  27. 黑色头发要打印位置 二  
  28. </div>
  29. <!--endprint-->
  30. <center>本部分以下不被打印</center>
  31. 黑色头发不被打印位置 三  
  32. <div align="center">
  33. <input type="button" name="print" value="预览并打印" onclick="preview()">
  34. </div>
  35. <style> @media Print { .Noprn { DISPLAY: none }}  
  36. </style>
  37. <p class="Noprn">不打印</p>
  38. <table id="datagrid">
  39. <tr>
  40. <td>普通打印</td>
  41. </tr>
  42. </table>
  43. <input class="Noprn" type="button" onclick="window.print()" value="print">
  44. </form>
  45. </body>
  46. </html>

不带母版的aspx页面打印

Html代码

  1. <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml" >
  4. <script id=Script1 language=javascript>
  5.     <!--  
  6.     function preview()  
  7.     {  
  8. bdhtml=window.document.body.innerHTML;  
  9. sprnstr="<!--startprint-->";  
  10. eprnstr="<!--endprint-->";  
  11. prnhtml=bdhtml.substr(bdhtml.indexOf(sprnstr)+17);  
  12.         alert(prnhtml);  
  13. prnhtmlprnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr));  
  14. window.document.body.innerHTML=prnhtml;  
  15.         window.print();  
  16.     }   
  17.     -->
  18. </script>
  19. <head runat="server">
  20. <title>无标题页</title>
  21. </head>
  22. <body>
  23. <form id="form1" runat="server">
  24. 黑色头发不被打印位置 一  
  25. <center>本部分以上不被打印</center>
  26. <!--startprint-->
  27. 黑色头发要打印位置 二  
  28. <!--endprint-->
  29. <center>本部分以下不被打印</center>
  30. 黑色头发不被打印位置 三  
  31. <div align="center">
  32. <input type="button" name="print" value="预览并打印" onclick="preview()">
  33. </div>
  34. <style> @media Print { .Noprn { DISPLAY: none }}  
  35. </style>
  36. <p class="Noprn">不打印</p>
  37. <table id="datagrid">
  38. <tr>
  39. <td>打印</td>
  40. </tr>
  41. </table>
  42. <input class="Noprn" type="button" onclick="window.print()" value="print">
  43. <input type="button" name="print" value="预览并打印" onclick="preview()">
  44. </body>
  45. </html>

带母版的aspx页面打印
要把js代码写在js文件里再调用,否则显示不正常
preview.js

Js代码

  1. // JScript 文件
  2.    <!--  
  3. function preview()  
  4.     {  
  5.         bdhtml=window.document.body.innerHTML;  
  6.         sprnstr="<!--startprint-->";  
  7.         eprnstr="<!--endprint-->";  
  8.         prnhtml=bdhtml.substr(bdhtml.indexOf(sprnstr)+17);  
  9.          alert("prnhtml:"+prnhtml);  
  10.         prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr));  
  11.         window.document.body.innerHTML=prnhtml;  
  12.         window.print();  
  13.     }   
  14.     --> 

aspx文件
<%@ Page Language="C#" MasterPageFile="~/public/MenuIndexContainerHeader.master" AutoEventWireup="true" CodeFile="CFJDS.aspx.cs" Inherits="private_dzjc_DYSZ_CFJDS" Title="Untitled Page" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<script language="JavaScript" type="text/javascript" src="http://www.cnblogs.com/js/Move.js"></script>
<script language="JavaScript" type="text/javascript" src="http://www.cnblogs.com/js/preview.js"></script>
黑色头发不被打印位置 一
<!--startprint-->
黑色头发要打印位置 二
<!--endprint-->
黑色头发不被打印位置 三
<input type="button" name="print" value="预览并打印" onclick="preview()">
</asp:Content>
黑色头发:http://heisetoufa.iteye.com

posted on 2012-05-06 15:55  chen110xi  阅读(836)  评论(0编辑  收藏  举报