0

当我单击一个方法来呈现页面的一部分时,它不会更改任何内容,直到我手动刷新页面。

这是豆:

boolean showPage = true;

public boolean getShowPage(){
    return showPage;
}

这是视图:

<h:form>
    <p:commandButton value="Click" action="#{bean.hideContents()}" />
</h:form>

<p:panel rendered="#{bean.showPage}">
    Contents 
</p:panel>

当我手动刷新页面时面板会隐藏,否则不会。这是如何引起的,我该如何解决?

4

1 回答 1

6

您需要更新条件渲染组件的父组件。您可以通过在 的update属性中指定其客户端 ID 来做到这一点<p:commandButton>

<h:form>
    <p:commandButton value="Click" action="#{bean.hideContents}" update=":panel" />
</h:form>

<h:panelGroup id="panel">
    <p:panel rendered="#{bean.showPage}">
        Contents 
    </p:panel>
</h:panelGroup>

也可以看看:

于 2012-11-28T18:26:53.537 回答