ASP.Net怎么实现从网页上打印

 我来答
xll617
2011-11-21 · 超过25用户采纳过TA的回答
知道答主
回答量:111
采纳率:0%
帮助的人:47.9万
展开全部
直接调用window.print或者webrower控件的ExecWB方法来打印。

优点:方便快捷,客户端无需任何设置即可。

缺点:打印控制不是很灵活。如果直接调用。

window.print来打印页面,页面上别的元素也会被打印处理,页头页尾的格式也不好控制。

常用方法:大部分情况会把查询的结果绑定到DataGrid上来,然后打印DataGrid。这种情况的打印一般来说格式比较固定简单,确定后基本不会再作更改。所以可以采用IE直接打印。

【实例代码】

注:①这是客户端通过window.print打印指定内容。这里定义sprnstr和eprnstr来指定内容。

执行代码:

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

②如果直接使用window.print将打印页面上的所有内容,但是我们可以使用:

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

用来指定不打印的内容。

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><!--省略部分代码--><form id="WebForm1" method="post" runat="server"> <center>本部分以上不被打印</center> <!--startprint--> <div align="center"> <asp:DataGrid id="dgShow" runat="server"> <!--省略部分代码--> </asp:DataGrid> </div> <!--endprint--> <center>本部分以下不被打印</center> <div align="center"> <input type="button" name="print" value="预览并打印" onclick="preview()"> </div> <style> @media Print { .Noprn { DISPLAY: none }} </style> <p class="Noprn">不打印</p> <table id="datagrid"> <tr> <td>打印</td> </tr> </table> <input class="Noprn" type="button" onclick="window.print()" value="print"></form>
陈旭阳VS
2011-11-19 · TA获得超过239个赞
知道答主
回答量:23
采纳率:0%
帮助的人:11.8万
展开全部
window.print()
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
liyujiajay
2011-11-19 · TA获得超过219个赞
知道小有建树答主
回答量:407
采纳率:0%
帮助的人:296万
展开全部
window.print()
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式