我目前有一个窗体的预览,它看起来与我们希望它如何查找要查看的列表项完全相同,但是问题是,当我在FOrm Display中将CEWP添加为“打印”按钮时,它执行与使用Control P完全相同的功能并打印整个页面。参见代码。
<div style="text-align: center"><input onclick="window.print();return false;" type="button" value=" Print this page "/> </div>"
我想添加到它,使其仅打印表单,而没有其他内容显示在窗口中当前视图的外面,实际上是按11填充8.5。
有任何想法吗?
最佳答案
受this InfoPath print button的启发,一种解决方案是获取CEWP的内容并创建一个仅包含这些内容的新窗口。
var patt = /**your CEWP ID here***/g;
var alldivs = document.getElementsByTagName('div');
var printpageHTML = '';
for(var i=0; i<alldivs.length; i++){
if(patt.test(alldivs[i].id)){
printpageHTML = '<HTML><HEAD>\n' +
document.getElementsByTagName('HEAD')[0].innerHTML +
'</HEAD>\n<BODY>\n' +
alldivs[i].innerHTML.replace('inline-block','block') +
'\n</BODY></HTML>';
break;
}
}
var printWindow = window.open('','printWindow');
printWindow.document.open();
printWindow.document.write(printpageHTML);
printWindow.document.close();
printWindow.print();
printWindow.close();
固定:删除了转义HTML字符。