2014-03-31 33 views
1

我敢肯定,我失去了一些东西简单明了,但在XPages中,使用标签面板,谁做我得到的所有的标签打印时用户打印的页面?的XPages标签面板打印

+5

打印特殊页面。隐藏的标签不是页面的一部分(DOM),所以通常的CSS魔法不会有帮助。 –

+2

另外,如果您使用的是标准选项卡式面板组件(与Dojo选项卡容器相反),则未选定选项卡的内容甚至不在DOM中...需要完整刷新事件才能检索数据新选择的选项卡,此时选定选项卡的数据不再位于DOM中。在附注中,您是否确认首先需要打印?此外,当然,“我们想要”? –

回答

7

可以使用道场标签容器(扩展库的一部分),而不是标准的标签面板。使用Dojo选项卡容器,所有选项卡的内容立即被加载(与Tim所说的相反,如标准选项卡式面板),因此您可以执行一些CSS魔术来使所有选项卡在打印时可见。

蒂姆建议建立一个单独的XPage进行打印,我第二。组织自定义控件中选项卡的内容,例如用后缀“_print”创建一个新的XPage,并在没有选项卡的面板中包含自定义控件。然后在第一个XPage中创建一个按钮,链接或其他内容,它可以在新窗口中简单地打开带有相同名称的XPage并加上“_print”。

在“_print” XPAGE您可以使用“window.print”在页面加载后自动打开打印对话框。

这种技术的优点是你可以根据需要准确样式打印。您甚至可以通过使用visible/rendered属性来控制打印时要包含的内容,并且只有当当前页面名称不包含“_print”时才能控制渲染控件。

+0

第二页创建,像冠军一样工作。不知道我以前没有遇到过这种情况,但有人希望能够与客户一起将印刷的信息带到医院,所以显然需要在这种情况下进行印刷。 –

+0

我试图做一些类似的ExtLib对话框控件。我使用viewScope var在对话框控件中打开文档。我在Dialog控件上有一个打印按钮。我使用打印按钮启动打印x页面,但是我在打印x页面时出现数据出现问题。有任何想法吗? –