如何在命令按钮单击上隐藏和显示p:面板

时间:2012-09-26 10:57:37

标签: jsf-2 primefaces

我有以下问题:

我是JSF2和primefaces的新手。

在用户输入字符串并单击CommandButton后,我在页面中有一个表格,其中将填充信息。单击按钮后,我希望在处理结束之前将其禁用。

要禁用CommandButton,我正在执行以下操作;

<p:commandButton update=":outPanel" widgetVar="btnSend" id="btnsend"
     value="Calcular" actionListener="#{calcBean.getTrfs}" 
     onclick="btnSend.disable()" oncomplete="btnSend.enable()" />  

然后我有一个面板,我想展示它的内容:

<p:panel id="outPanel" widgetVar="outpanel">
         #{calcBean.result}
</p:panel>

如何在第一次加载页面时隐藏此分页面?

单击CommandButton时如何隐藏它,如果我的bean中的处理成功,则只显示它?

感谢。

3 个答案:

答案 0 :(得分:7)

解决,

我必须把

   closable="true" toggleable="true" 
p:面板中的

属性......谢谢

答案 1 :(得分:3)

我已经在JSF中使用p:commandButton检查了以下面板隐藏和显示,

请在JSF中尝试以下方法,

<p:panel id="button_panel" widgetVar="testPanel" closable="true" toggleable="true">
<h1>Testing</h1>
</p:panel>

<p:commandButton onclick="PF('testPanel').show()" value="Show Panel" type="button"/>

<p:commandButton onclick="PF('testPanel').hide();" value="Hide Panel" type="button"/>

答案 2 :(得分:0)

在ajax请求完成后显示面板试试这个:

 <p:commandButton update=":outPanel" widgetVar="btnSend" id="btnsend"
 value="Calcular" actionListener="#{calcBean.getTrfs}" 
 onclick="btnSend.disable()" oncomplete="btnSend.enable();outPanel.show();" />