zl程序教程

您现在的位置是:首页 >  后端

当前栏目

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

批量方法Web 实现 以及 页面 打印 单页
2023-09-14 09:01:10 时间

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

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

1

2

3

4

5

6

7

8

9

10

11

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).给每个分页的内容要加一个高度,防止变样

1

2

3

4



    
报告单1



    
报告单2





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

1

2

3

4

var printHead = ""

            +"";

var printCnt='打印的内容';

printStr = printHead + printCnt;

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

1

2

3

4

5

6

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