首页 >web前端 >js教程 >web页面的单页打印以及批量打印实现方法

web页面的单页打印以及批量打印实现方法

小云云
小云云原创
2018-03-17 15:07:4111938浏览

本文主要和大家分享web页面的单页打印以及批量打印实现方法,希望能帮助到大家。

打印事件:window.print()

1.单页打印(布局打印):

function printCnt(){
    //1.获取当前页的html代码  
    var body = window.document.body.innerHTML; 
	//2.要打印的部分(#print里面的内容就是要打印的内容)
    window.document.body.innerHTML =document.getElementById("print").innerHTML; 
    window.print();
    window.document.body.innerHTML = body;
	//重新载入当前文档:
    location.reload();
}
注意:location.reload();要加,因可解决JS window.print()第二次点击事件失效问题

2.批量打印

注意点:

(1).控制网页的分页:page-break-after:always

注意:避免在表格、浮动元素、带有边框的块元素中使用分页属性

(2).给每个分页的内容要加一个高度,防止变样

<p  id="printcnt">
	<p id="page1" style="height:300px;page-break-after:always" >报告单1</p>
	<p id="page2" style="height:300px;page-break-after:always" >报告单2</p>
</p>

(3)如果css的样式没有载入打印中,请加入:var printStr='';

var printHead = "<html><head><meta http-equiv=&#39;Content-Type&#39; content=&#39;text/html; charset=utf-8&#39;>"
			+"<link rel=&#39;stylesheet&#39;  type=&#39;text/css&#39; href=&#39;css/printcss.css&#39;></head><body>";
var printCnt=&#39;打印的内容&#39;;
printStr = printHead + printCnt;

(4).如果使用window.open("showPrint.html","print"); 打印预览页面的话

printStr = printHead + printCnt;  
//如果是本地测试,需要先新建Print.html,如果是在域中使用,则不需要
var pwin=window.open("showPrint.html","print");
pwin.document.write(printStr); 
pwin.document.close();//这个是必须的 
注意:pwin.document.close(); 可以关闭showPrint.html的页面,使其第二次打印的时候不会跳转到showPrint.html

相关推荐:

用javascript实现页面打印的三种方法_典型特效

javascript 局部页面打印实现代码_javascript技巧

js或jquery实现页面打印可局部打印_javascript技巧

以上是web页面的单页打印以及批量打印实现方法的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn