Salut ,
J'ai un problème avec <h:selectOneRadio>.
En effet, j'ai un selectOneRadio qui comporte 3 items (année,mois,jour) et un 2 selectOneMenu(List mois,List jour a l'etat initial sont toutes les 2 cachées) .
Je veux lorsque je clique par exemple sur l'items mois de selectOneRadio la liste mois s'affiche.
Le problème est lorsque je choisis un items mois la liste List mois s'affiche mais toute la page est rafraîchie avec
<a4j:support action="#{EvolutionPtGManagmentBean.goToEvolutionPtGList}" reRender="Annee,Mois" event="onclick"/>
alors que je veux seulement que la list s'affiche sans rafraichissement de toute la page.
J'ai essayé avec:
<a4j:support action="#{EvolutionPtGManagmentBean.choix}" reRender="Annee,Mois" event="onclick"/>
mais ça ne marche pas. Rien ne se produit, les listes restent toujours cachees.
MERCI D'AVANCE POUR VOTRE AIDE
jsp:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| <h:selectOneRadio value="#{EvolutionPtGManagmentBean.type}" styleClass="contentTitle" >
<f:selectItems value="#{EvolutionPtGManagmentBean.opérations}"/>
<a4j:support action="#{EvolutionPtGManagmentBean.goToEvolutionPtGList}" reRender="Annee,Mois" event="onclick"/>
</h:selectOneRadio>
<div>
<h:selectOneMenu id="Annee" value="#{EvolutionPtGManagmentBean.evolutionModel.selectedAnnee}" required="#{EvolutionPtGManagmentBean.evolutionModel.newItem.metadata.codeNiv.requiredOnInsert}" converterMessage="#{msgs.evoution_de_point_gagnés_message_List_Annee}" validatorMessage="#{msgs.evoution_de_point_gagnés_message_List_Annee}" requiredMessage="#{msgs.evoution_de_point_gagnés_message_List_Annee}" binding="#{EvolutionPtGManagmentBean.evolutionPtGView.annee}" styleClass="selectOneMenuStyle" >
<f:selectItems value="#{EvolutionPtGManagmentBean.evolutionModel.annee}" />
</h:selectOneMenu>
<rich:message for="Annee" styleClass="MsgStyle" errorClass="errorMessageStyle"/>
</div>
<div>
<h:selectOneMenu id="Mois" styleClass="selectOneMenuStyle" converterMessage="#{msgs.evoution_de_point_gagnés_message_List_Annee}" required="#{EvolutionPtGManagmentBean.evolutionModel.newItem.metadata.codeNiv.requiredOnInsert}" validatorMessage="Il faut choisir un mois" requiredMessage="Il faut choisir un mois" value="#{EvolutionPtGManagmentBean.evolutionModel.selectedMonth}" binding="#{EvolutionPtGManagmentBean.evolutionPtGView.mois}">
<f:selectItems value="#{EvolutionPtGManagmentBean.evolutionModel.mois}" />
</h:selectOneMenu> |
**** au niveau du management bean******
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
| private SelectItem[] opérations = {
new SelectItem("1", "Par Année"),
new SelectItem("2", "Par Mois"),
new SelectItem("3", "Par Jour")
};
public String goToEvolutionPtGList() throws BusinessException {
getEvolutionModel().loadAllNivau(loyaltyLevelSessionLocal.getAllLoyaltyLevel());
getEvolutionModel().loadAllAnnee(sessionBean.getAllAnne());
getEvolutionModel().loadAllMonth(sessionBean.AllListMonth());
getEvolutionPtGView().getAnnee().setRendered(false);
getEvolutionPtGView().getMois().setRendered(false);
choix();
return "goToEvolutionPtGList";
}
public void choix() throws BusinessException {
if (getType() == 1) {
getEvolutionPtGView().getAnnee().setRendered(false);
getEvolutionPtGView().getMois().setRendered(false);
getEvolutionModel().setSelectedAnnee(null);
getEvolutionModel().setSelectedMonth(null);
}
if (getType() == 2) {
getEvolutionPtGView().getAnnee().setRendered(true);
getEvolutionPtGView().getMois().setRendered(false);
getEvolutionModel().setSelectedMonth(null);
}
if (getType() == 3) {
getEvolutionPtGView().getAnnee().setRendered(true);
getEvolutionPtGView().getMois().setRendered(true);
}
} |
Partager