をクリック<h:selectOneListbox>
すると表示される<h:commandbutton>
があります。ユーザーがリストボックスから選択すると、選択した値がリストボックスに表示され、<h:inputText>
非表示になります。
<h:selectoneListbox>
表示されたらレンダリングを停止できません。ビューが最初に表示されたとき、rendered
属性は正常に機能しますが、リストをクリックしてリスナーが呼び出された後は無視されます。
何か案は?
フェイスレットは次のとおりです。
<h:panelGroup>
<h:inputText id="TitleText" value="#{bindingScheduleHandler.title}"/>
<h:commandButton value="Clients" actionListener= #bindingScheduleHandler.clientList}" />
<h:selectOneListbox id="listBox" value="#{bindingScheduleHandler.clients}" size="5"
rendered="#{bindingScheduleHandler.showClients}">
<f:selectItems value="#{bindingScheduleHandler.clientLabelsValues}" />
<f:ajax event="click" listener="#{bindingScheduleHandler.clickListener}"
render="TitleText" />
</h:selectOneListbox>
</h:panelGroup>
バッキング Bean は次のとおりです。
public void clickListener(AjaxBehaviorEvent event) {
this.title = clients;
showClients = false;
renderClientList = false;
}