分享

Asp.net 的网络打印 – Javascript 控制打印

 悟静 2012-01-25

Asp.net 的网络打印 – Javascript 控制打印

---资料来源于Microsfot WebCast.

 

1.       采用Javascript 控制打印:

-          先写的 javascript 的 function

<script language="javascript">

              function preview()

              {

              bdhtml=window.document.body.innerHTML;

              sprnstr="<!--startprint-->";

              eprnstr="<!--endprint-->";

              prnhtml=bdhtml.substr(bdhtml.indexOf(sprnstr)+17);

              prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr));

              window.document.body.innerHTML=prnhtml;

              window.print();

              }

</script>

 

要控制的打印部分用 startprint 和 endprint 来限定区域

- 控制打印部分

<center>本部分以上不被打印</center>

                     <!--startprint-->

                     <div align="center">

                            <asp:DataGrid id="dgShow" runat="server" BorderColor="#CC9966" BorderStyle="None" BorderWidth="1px" BackColor="White" CellPadding="4">

                                   <SelectedItemStyle Font-Bold="True" ForeColor="#663399" BackColor="#FFCC66"></SelectedItemStyle>

                                   <ItemStyle ForeColor="#330099" BackColor="White"></ItemStyle>

                                   <HeaderStyle Font-Bold="True" ForeColor="#FFFFCC" BackColor="#990000"></HeaderStyle>

                                   <FooterStyle ForeColor="#330099" BackColor="#FFFFCC"></FooterStyle>

                                   <PagerStyle HorizontalAlign="Center" ForeColor="#330099" BackColor="#FFFFCC"></PagerStyle>

                            </asp:DataGrid>

                     </div>

                     <!--endprint-->

<center>本部分以下不被打印</center>

 

-          调用打印部分

<input type="button" name="print" value="预览并打印" onclick="preview()">

 

2.如果要直接打印,又想直接控制到那些不打印出来

       - 先造建一个不打印的样式

<style> @media Print { .Noprn { DISPLAY: none }}</style>

 

-          在希望不打印的控件前面加上不打印的样式

   eg 1: <p class="Noprn">不打印</p>

eg2:<input class="Noprn" type="button" name="print" value="预览并打印" onclick="preview()">

 

-          调用直接打印,并不打印不希望见到的控件

 <input class="Noprn" type="button" onclick="window.print()" value="print">

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多