我有一个网页,其中包含jstl forEach循环中的面板列表。加载页面时折叠所有面板。在展开每个面板时,我将折叠状态保存到bean中,以便稍后引用它。我从p:commandLink更新面板,但是显示的面板是基于先前的索引而不是bean值。我的要求是面板的折叠属性应根据之前设置的bean值进行更新,目前面板是根据先前展开的面板的索引进行扩展,而不是根据它的bean属性值。
只需看一下代码段。
<h:form id="form">
<c:forEach items="#{items}" var="name">
<p:panel header="#{name}" toggleable="true"
toggleTitle="#{bean.toggleStatus.get(name)}"
collapsed="#{bean.toggleStatus.get(name)}" toggleSpeed="500"
id="panel#{name}" widgetVar="panel#{name}">
<h:outputText value="#{name}"/>
</p:panel>
</c:forEach>
<p:commandLink id="Search" style="margin-left :5px;"
action="#{bean.search}" update="form" ajax="true"/>
</h:form>
答案 0 :(得分:0)
从您的代码中,#{bean.toggleStatus.get(name)}
似乎返回String
个对象。
<p:panel collapsed="">
需要一个布尔值。
您必须发布您的支持bean代码,以查看该方法的返回值。