ajax调用使字段为空

ajax调用使字段为空,ajax,jsf,primefaces,Ajax,Jsf,Primefaces,更新了代码,但没有真正的更改 当我设置球员时,我想用当前球员俱乐部更新另一个“选择一个”菜单。但菜单将完全变空。bean将始终返回正确的值 从页面导航并返回将显示正确的值。在您第一次返回后,它将始终按预期工作 <p:selectOneMenu value="#{player}" converter="playerConverter" id="playerList"> <f:selectItem itemLabel="---

更新了代码,但没有真正的更改

当我设置球员时,我想用当前球员俱乐部更新另一个“选择一个”菜单。但菜单将完全变空。bean将始终返回正确的值

从页面导航并返回将显示正确的值。在您第一次返回后,它将始终按预期工作

<p:selectOneMenu value="#{player}"
                converter="playerConverter" id="playerList">
            <f:selectItem itemLabel="---" noSelectionOption="true" />
            <f:selectItems value="#{servicePlayer.allPlayers}"
             var="n"
             itemValue="#{n}"
             itemLabel="#{n.combinedName}"
             itemLabelEscaped="true"/>
               <p:ajax event="change" execute="@this" update="ClubMenu" actionListener="#{serviceHCP.getClubs(player)}"/>  
              <!--  p:ajax event="change" execute="@this" render="ClubMenu" /-->
            </p:selectOneMenu>

                <h:outputText value="Klubb"></h:outputText>
                <p:selectOneMenu id="ClubMenu" value="#{serviceHCP.myClubList}" rendered="#{not empty serviceHCP.myClubList}">
                    <f:selectItems value="#{serviceHCP.getClubs(player)}" />
                </p:selectOneMenu>
                <h:outputText value="Serietyp"></h:outputText>

您还需要处理playerList字段:

<p:ajax process="@this" update="ClubMenu" />


它不起作用。getclubs()似乎没有被调用。第二个select one似乎在它有任何信息之前被渲染。
<p:ajax process="@this" update="ClubMenu" />