首頁  >  文章  >  web前端  >  web頁面的單頁列印以及批次列印實作方法

web頁面的單頁列印以及批次列印實作方法

小云云
小云云原創
2018-03-17 15:07:4111925瀏覽

本文主要和大家分享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