【问题标题】:how to print part of the page in asp.net如何在asp.net中打印部分页面
【发布时间】:2013-04-08 15:45:41
【问题描述】:

我有一个包含 div 的模态弹出窗口。我有一个按钮让用户打印该 div 的内容。 window.print 打印整个页面。 如何只打印 div 的内容。

谢谢。

【问题讨论】:

标签: asp.net printing


【解决方案1】:

使用这个脚本

<script language="javascript" type="text/javascript">
    function CallPrint(strid) {
        var prtContent = document.getElementById(strid);
        var WinPrint = window.open('', '', 'letf=0,top=0,width=800,height=100,toolbar=0,scrollbars=0,status=0,dir=ltr');
        WinPrint.document.write(prtContent.innerHTML);
        WinPrint.document.close();
        WinPrint.focus();
        WinPrint.print();
        WinPrint.close();
        prtContent.innerHTML = strOldOne;
    }
</script>

并从按钮调用它

 <asp:button id="BtnPrint" runat="server" onclientclick="javascript:CallPrint('bill');" text="Print" xmlns:asp="#unknown" />

你的 div 也应该有名字(bill)

【讨论】:

  • 它是否适用于 Asp.net 网络表单中的 &lt;div runat="server"&gt;
  • @DylanChensky 在 div 中使用 ClientIDMode="Static" 或在 javascript 调用中使用 。
【解决方案2】:

此代码可能对您有所帮助..

HTML 代码:

 <div id="printarea">

    //content you want to print
    </div>

    <input id="btnprint" type="button" onclick="PrintDiv()" value="Print" /></center>

这是javascript

 <script type="text/javascript">

            function PrintDiv() {
                var divToPrint = document.getElementById('printarea');
                var popupWin = window.open('', '_blank', 'width=300,height=400,location=no,left=200px');
                popupWin.document.open();
                popupWin.document.write('<html><body onload="window.print()">' + divToPrint.innerHTML + '</html>');
                popupWin.document.close();
            }
         </script>

【讨论】:

    【解决方案3】:

    试试这个:

    function printdiv(printpage)
    {
      var headstr = "<html><head><title></title></head><body>";
      var footstr = "</body>";
      var newstr = document.all.item(printpage).innerHTML;
      var oldstr = document.body.innerHTML;
      document.body.innerHTML = headstr+newstr+footstr;
      window.print();
      document.body.innerHTML = oldstr;
      return false;
    }
    

    printpage 参数是您的 div id。

    来源:微软论坛:http://forums.asp.net/t/1261525.aspx/1

    【讨论】:

      猜你喜欢
      • 2010-09-18
      • 1970-01-01
      • 2016-04-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-06
      • 2012-01-20
      相关资源
      最近更新 更多