我有一个在首次打开页面时折叠的面板,应该使用附加到selectOneButton的p:ajax进行更新
<p:selectOneButton required="true"
value="#{bean.jobProfile.salary.subjectToDisclosure}"
id="salarySubjectToDisclosure">
<f:selectItem itemValue="#{true}" itemLabel="#{msg['yes']}" />
<f:selectItem itemValue="#{false}" itemLabel="#{msg['no']}" />
<p:ajax
listener="#{bean.changeSubjectToDisclosure()}"
update="@(.paymentDetailsSliderHeaderUpdateable) grossPaymentWrapper" />
</p:selectOneButton>
因此。有2个选项。是和否。是的,具有id grossPaymentWrapper的面板应该显示并且不会折叠。
小组:
<p:panel id="grossPaymentWrapper">
#{!bean.jobProfile.salary.subjectToDisclosure}
<p:panel toggleable="true"
collapsed="#{!bean.jobProfile.salary.subjectToDisclosure}">
选择其他按钮时,行#{!bean.jobProfile.salary.subjectToDisclosure}
始终会更新显示true或false,但两个选项都不显示该面板。
感谢帮助
感谢。
答案 0 :(得分:0)
您是否尝试过设置内部toggleable="true"
组件的属性p:panel
属性?
p:面板组件的文档将折叠属性描述为
“将可切换面板渲染为已折叠。默认为false。”
文档链接:http://www.primefaces.org/docs/vdl/6.0/core/primefaces-p/panel.html
答案 1 :(得分:0)
您可以使用JavaScript执行此操作,Primfaces p:panel有一个名为toggle()
的JavaScript函数,您可以通过向widgetVar
添加p:panel
来调用toggle
,调用{{ 1}}该组件的功能。
<p:panel id="..." widgetVar="panel">
...
</p:panel>
然后使用:PF('panel').toggle()