我们在做网页程序时有时要把打印按钮放到一个页面中(a页面),而要打印的内容却不在这个页面,而是在另一个页面(b页面)。我们如何使用QWPrint打印这种情况呢?

学4o网8a页6u网(http://www.xwangye.com)

因为目前QWPrint还不支持网址输入打印地址,本人会考虑在以后的版本中增加此功能。所以我们要使用一点技巧来解决这个问题。

学4o网8a页6u网(http://www.xwangye.com)

b页面还是按照正常的加载完成后就打印来设计。我们要对a页面进行一下修改。

学4o网8a页6u网(http://www.xwangye.com)

为了不出现b的界面,我们把b页面使用iframe括起来。把下面的代码放置到a页面的下部(上面。)

学4o网8a页6u网(http://www.xwangye.com)

把该页面放置到a页面中底部。

学4o网8a页6u网(http://www.xwangye.com)

以下是代码片段:

<IFRAME name=printArea src="about:blank" width=0 height=0></IFRAME>

学4o网8a页6u网(http://www.xwangye.com)

学4o网8a页6u网(http://www.xwangye.com)

我们给a页面上的打印按钮脚本事件处理代码如下:

学4o网8a页6u网(http://www.xwangye.com)

以下是代码片段:

function print(){

学4o网8a页6u网(http://www.xwangye.com)

    var printPage="b.asp?resf="+Math.random();     //防止页面缓存。
        window.open(printPage,'printArea','scroll=no');

学4o网8a页6u网(http://www.xwangye.com)

}

学4o网8a页6u网(http://www.xwangye.com)

学4o网8a页6u网(http://www.xwangye.com)

当然,为了使应更复杂的打印,大家可以再扩展这个脚本事件。

学4o网8a页6u网(http://www.xwangye.com)

此页面的完整代码可以从这里下载:QWPrint示例代码1

学4o网8a页6u网(http://www.xwangye.com)