今天在开发项目过程中遇到了对记录需要多页打印的情况。先来说打印。打印比较简单,利用百度可以找到很多js的打印代码,我目前所用的打印代码也是从网上copy下来的,
<script type="text/javascript">
function preview() {
var bdhtml = window.document.body.innerHTML;
var sprnstr = "<!--startprint-->";
var eprnstr = "<!--endprint-->";
var prnhtml = bdhtml.substr(bdhtml.indexOf(sprnstr) + 17);
var prnhtml = prnhtml.substring(0, prnhtml.indexOf(eprnstr));
window.document.body.innerHTML = prnhtml;
window.print();
window.history.back(-1);
}
</script>
其中,<!--startprint-->和<!--endprint-->作为打印内容的标记,将需要打印的代码放到这两个标记内,例如
<div class="entry">
<div class="button">
<input type="button" value="打印" οnclick="preview()" /> <asp:Button ID="reset"
runat="server" Text="返回" OnClick="reset_Click" />
</div>
<!--startprint-->
<rl:ppage ID="print" runat="server" />
<!--endprint-->
</div>
这里需要说明的是,我已将需要打印的内容单独作为一个usercontrol来保存,这样方便页面管理。
下面来说一下分页。其实分页也很简单,只需要在需要分页的地方加入
<style type="text\css">page-break-after:always</style>
前台代码:
<div runat="server" id="ppage" style="page-break-after:always"></div>