Jsf 任何<;用户界面:重复>&书信电报;p:panel Toggable=";“真的”&燃气轮机;仅切换最后一个面板

Jsf 任何<;用户界面:重复>&书信电报;p:panel Toggable=";“真的”&燃气轮机;仅切换最后一个面板,jsf,primefaces,toggle,panel,uirepeat,Jsf,Primefaces,Toggle,Panel,Uirepeat,我在ui:repeat中嵌套了一个p:panel,当我尝试切换任何面板时,总是切换最后一个面板 <ui:repeat id="listes" value="#{rechercheTypeMesureCtrl.allTypeMesureArterielle}" var="l" varStatus="varStatus"> <p:growl id="msg" showDetail="true" /> <p:panel id="p" header="#{

我在ui:repeat中嵌套了一个p:panel,当我尝试切换任何面板时,总是切换最后一个面板

<ui:repeat id="listes" value="#{rechercheTypeMesureCtrl.allTypeMesureArterielle}" var="l" varStatus="varStatus">

    <p:growl id="msg" showDetail="true" />
    <p:panel id="p" header="#{l.nom}" toggleable="true" closable="true" toggleSpeed="500" closeSpeed="500" widgetVar="panel" style="margin-bottom:20px" value="#{l.id_typeMesure}" >
        <p:ajax event="close" listener="#{panelView.onClose}" />

        <p:ajax event="toggle" listener="#{panelView.onToggle}" />

        <h:panelGrid columns="8" cellpadding="10">

            <h:outputText value="Mesure"></h:outputText>
            <h:inputHidden value="#{l.id_typeMesure}" />
            <p:inputText value="#{l.nom}"> 
             </p:inputText>
              <h:outputText value="Min value"></h:outputText>
            <p:inputText value="#{l.valeurMin}"> 
             </p:inputText>
              <h:outputText value="Max value"></h:outputText>
            <p:inputText value="#{l.valeurMax}"> 
             </p:inputText>
             <p:commandButton  actionListener="#{typeMesureCtrl.updateTypeMesureArterielle(l)}" id="iconOnly" icon= "ui-icon-pencil" action="typeMesure.xhtml?faces-redirect=true"/>



        </h:panelGrid>
    </p:panel>
</ui:repeat>

我有点晚了,但也遇到了类似的情况。。。检查这个

所以,尝试完全删除面板widgetvar-如果您使用右面板标题角的通用按钮进行切换/关闭

或者只是重复块内的参数化面板widgetvar值:

 varStatus="varStatus"
 widgetVar="panel_#{varStatus.index}"
如果您不想使用外部按钮或链接切换第5行:

onclick="PF('panel_5').toggle();"
或者,如果按钮位于repat块内:

onclick="PF('panel_#{varStatus.index}').toggle();"
(答案的第二部分在第6部分中测试)