日期:2014-05-18  浏览次数:20528 次

求组各位IT的前辈们....
小弟最近遇到了一个问题..
那就是在IE8下打印页面的局部部分...
要打印的内容是在iframe中的...我曾使用了PrintArea的打印,在IE6下是没问题的但是在iE8下Iframe打印空白页面,还有window.print()要不就全部打印,局部打印不好控制...
有没有 哪位知道一个很好的解决方案告诉小弟,急求....

------解决方案--------------------
JS 实现简单的页面局部打印 
JScript code
function preview(oper)
......{
if (oper < 10)......{
bdhtml=window.document.body.innerHTML;//获取当前页的html代码
sprnstr="<!--startprint"+oper+"-->";//设置打印开始区域
eprnstr="<!--endprint"+oper+"-->";//设置打印结束区域
prnhtml=bdhtml.substring(bdhtml.indexOf(sprnstr)+18); //从开始代码向后取html

prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr));//从结束代码向前取html
window.document.body.innerHTML=prnhtml;
window.print();
window.document.body.innerHTML=bdhtml;


} else ......{
window.print();
}

}

------解决方案--------------------
内容是iframe中的,那要取框架的句柄,给iframe取个id号比如aaa,window.frames["aaa"]这就是句柄,然后打印它的全部内容是window.frames["aaa"].print();//如果再想要打印iframe里边内容的局部部分,可以看2楼代码。