在框架中用WebBrowser打印指定框架页面

相信许多人都用过WebBrowser做打印预览及打印,在使用中经常遇到的一个问题是当框架中一个页面用ExecWB(7,1)进行打印预览的时候发布并没有预览当前页面,而是所有框架的页面,其实在页面中执行ExecWB(7,1)相当于在 IE中点击“文件”---“打印预览”预览的是用户当前所看到的页面(所有框架页面),它并不会指定为调用ExecWB(7,1)页面,若要打印预览当前框架页面,可以将指定框架页面从新窗口打开,让新窗口只显示指定框架页面,再进行打印预览,那么问题就解决了。

 

Code

 说明:

 

1  var  newwin = window.open(window.location.href); // 从新窗口打开当页面,并获取新窗口对象
2 
3  newwin.attachEvent( ' onload ' , function (){newwin.document.getElementById( ' _ctl0_cntButton_cmdExit ' ).style.display = ' none ' ;newwin.document.getElementById( ' preview ' ).onclick();}); // 为新窗口的onload添加一个function。调用隐藏button,执行ExecWB(7,1),这里可以直接执行ExecWB(7,1),不用像我这样多此一举
4 
5  return   false ; // 这个很重要,避免回发,若回发则newwin对象消失,造成打印预览失效
6 

 

 

 

 

你可能感兴趣的:(WebBrowser)