gpt4 book ai didi

jsf-2 - Primefaces 动态覆盖面板仅显示一次

转载 作者:行者123 更新时间:2023-12-02 14:21:50 25 4
gpt4 key购买 nike

我有一个带有按钮的表单,可以打开 Primafaces overlayPanel。面板中还有另一个按钮,用于执行 Ajax 操作,然后关闭覆盖层。
这是一个根本没有 Ajax 操作的简化版本:

<h:form>
<p:commandButton id="button1" value="Open overlay" type="button"/>
<p:overlayPanel for="button1" widgetVar="ovl" dynamic="true">
<p:commandButton value="Close" oncomplete="ovl.hide();"
update="@form"/>
</p:overlayPanel>
</h:form>

请注意,面板必须有dynamic="true",因为在实际应用中必须获取动态内容,并且需要update="@form"为了更新其他表单组件。

问题是:如果我同时具有 dynamic="true"update="@form" 两种属性,则叠加层仅在第一次出现。单击“关闭”按钮后,如果我尝试再次单击“打开叠加层”,该面板将不会显示。

我做错了什么?

(使用 PrimeFaces 3.5 和 GlassFish 3.1.2.2)

最佳答案

使用onclick="widgetVar.loadContents()"在下拉按钮中 overlaypanel ,其中widgetVaroverlayPanel 的 var .

关于jsf-2 - Primefaces 动态覆盖面板仅显示一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15656856/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com