「outputText」と「selectOneRadio」の表示に問題があります。
私が持っているのは、ユーザーがinputTextを入力すると、outputTextとselectOneRadioが表示されるということです。主な問題は、ページを手動でリロードした場合にのみ機能することです。
ここに私のxhtmlページがあります:
<h:form id="profil">
<h:outputText id="teffect1" styleClass="colonne" value="#{messages['content.effectif']}" />
<p:inputText id="iteffect1" value="#{effectifBean.efCadre}" validatorMessage="test" >
<p:ajax event="change" update=":profil:wrapper" listener="#{effectifBean.efCadre}" process="@form" />
</p:inputText>
<h:panelGroup id="wrapper">
<h:outputText rendered="#{effectifBean.shouldRenderCadre() eq true}" value="#{messages['content.type1']}" />
<p:selectOneRadio rendered="#{effectifBean.shouldRenderCadre() eq true}" >
<f:selectItem itemLabel="#{messages['content.option1']}" itemValue="1" />
<f:selectItem itemLabel="#{messages['content.option2']}" itemValue="2" />
<f:selectItem itemLabel="#{messages['content.option3']}" itemValue="3" />
</p:selectOneRadio>
</h:panelGroup>
</h:form>
そして私のビーム:
public class EffectifBean {
private String efCadre;
public String getEfCadre() {
return efCadre;
}
public void setEfCadre(String efCadre) {
this.efCadre = efCadre;
}
public boolean shouldRenderCadre(){
if (efCadre != null && !efCadre.isEmpty() && !efCadre.equals("0")) {
return true;
} else return false;
}
}
ご協力ありがとうございました。