在页面加载时显示Primefaces的覆盖面板



点击目标组件(commandButton(时,页面显示Primefaces的overlayPanel

<p:commandButton id="inputBtn" value="Choose a data source" type="button" action="#{dataImportBean.oAuth}"/>

<p:overlayPanel
id="overlaypanel1"
for="inputBtn"
dynamic="false"
widgetVar="inputChooser"
>
// contents of the overlay panel
</p:overlayPanel>

我需要在页面加载时显示overlayPanel,而无需单击目标commandButton

用例是:用户打开了overlayPanel,但oAuth流使用户导航离开页面。oAuth完成后,用户将重定向到页面。然而,当页面加载时,overlayPanel是关闭的,而为了保持一致性,我需要将用户直接带回overlayPanel

在您的小部件var上使用客户端API。您可以使用show()来显示面板,因此在您的情况下:PF('inputChooser').show()

要在页面加载时执行此操作,可以将其放置在p:overlayPanel:之后

<c:if test="#{yourCondition}">
<script>$(function() { PF('inputChooser').show() })</script>
</c:if>

另请参阅:

  • https://primefaces.github.io/primefaces/10_0_0/#/components/overlaypanel?id=client-侧面api

相关内容

  • 没有找到相关文章

最新更新