webBrower 在线打印 第一页空白后面才有内容,就算实际内容只有一页,在打印,预览的时候也会有2页,第一页空白
向各位大侠们 求解
(代码如下)
<style media=print>
.Noprint{display:none;}
.PageNext{page-break-after: always;}
</style> <input type=button value=直接打印 onclick= "document.all.WebBrowser.ExecWB(6,6) " class= "NOPRINT "><input type=button value=页面设置 onclick= "document.all.WebBrowser.ExecWB(8,1) " class= "NOPRINT "><input type=button value=打印预览 onclick= "document.all.WebBrowser.ExecWB(7,1) " class= "NOPRINT "><hr>
<iframe src=<%=request.getContextPath()+"/report/"+request.getParameter("initFileName")%>.html style="border: 0px;width: 100%;height: 100%;"></iframe>
向各位大侠们 求解
(代码如下)
<style media=print>
.Noprint{display:none;}
.PageNext{page-break-after: always;}
</style> <input type=button value=直接打印 onclick= "document.all.WebBrowser.ExecWB(6,6) " class= "NOPRINT "><input type=button value=页面设置 onclick= "document.all.WebBrowser.ExecWB(8,1) " class= "NOPRINT "><input type=button value=打印预览 onclick= "document.all.WebBrowser.ExecWB(7,1) " class= "NOPRINT "><hr>
<iframe src=<%=request.getContextPath()+"/report/"+request.getParameter("initFileName")%>.html style="border: 0px;width: 100%;height: 100%;"></iframe>
PageNext {
page-break-before: always;
}这个page-break-before属性可以写在js中,然后循环控制,最后一页的前面才置为always
function printFrameTest(cls, type) {
var tabs = getElementsByClassName(cls);
for ( var i = 0; i < tabs.length; i++) {
tabs[i].style.display = '';
if(i < tabs.length-1) {
tabs[i].style.pageBreakAfter='always';
}
}
if (type == 'print') {
document.all.WebBrowser.ExecWB(6, 1);
}
if (type == 'printset') {
document.all.WebBrowser.ExecWB(8, 1);
}
if (type == 'view') {
document.all.WebBrowser.ExecWB(7, 1);
}
for ( var i = 0; i < tabs.length; i++) {
tabs[i].style.display = 'none';
}
}