如何在页面加载前隐藏可切换的 p:panel?

How can I hide a togglable p:panel before the page loads?

我有一个包含 2 个组件的 JSF 页面,一个按钮和一个面板。该按钮调用 jQuery toggle 来隐藏和显示面板。我希望当页面加载时,面板最初是隐藏的,这样当我第一次按下按钮时,面板就会出现。

<p:commandButton onclick="PF('panelMatches').toggle()" value="Matches" type="button" />
<p:panel id="button_panel" widgetVar="panelMatches" closable="true" toggleable="true">
    Matches: 0
</p:panel>

使用此代码,面板最初始终可见。

只需使用 collapsed="true" 作为 <p:panel> 的属性。然后它将从头开始呈现 "closed" 并且第一次调用 toggle() 将打开它。

参考您使用的primefaces版本的文档:http://www.primefaces.org/documentation.html

Name      | Default | Type    | Description
collapsed | false   | Boolean | Renders a toggleable panel as collapsed.