这里设置多段打印区域
html中代码如下:
<!--startprint1-->
<div class="theme">
<p><span class="text-right">发  往:</span>各部门</p>
<p><span class="text-right">发件人:</span>人力资源中心</p>
<p><span class="text-right">主题词:</span>清明节 放假 通知</p>
<p><span class="text-right">日  期:</span>2021/03/30</p>
<p><span class="text-right">抄  送:</span>董事长</p>
</div>
<!--endprint1-->
<p class="text-right">发文字号:医院一部通知〔2021〕12号</p>
<!--startprint2-->
<div class="title text-center">关于2021年清明节放假安排的通知</div>
<!--endprint2-->
<div class="text-center"><button onclick="preview()"> 打印 </button></div>
js代码:
function preview() {
$("body").css('background-color','#fff');
bdhtml = window.document.body.innerHTML;
//获取当前页的html代码
sprnstr = "<!--startprint1-->";
//设置打印开始区域
eprnstr = "<!--endprint1-->";
//设置打印结束区域
prnhtml = bdhtml.substring(bdhtml.indexOf(sprnstr) + 18);
//从开始代码向后取html
prnhtml = prnhtml.substring(0, prnhtml.indexOf(eprnstr));
//从结束代码向前取html
sprnstr2 = "<!--startprint2-->";
//设置打印开始区域
eprnstr2 = "<!--endprint2-->";
//设置打印结束区域
prnhtml2 = bdhtml.substring(bdhtml.indexOf(sprnstr2) + 18);
//从开始代码向后取html
prnhtml2 = prnhtml2.substring(0, prnhtml2.indexOf(eprnstr2));
//从结束代码向前取html
window.document.body.innerHTML = prnhtml+prnhtml2;
window.print();
window.document.body.innerHTML = bdhtml;
//恢复页面样式
};