IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JSF Java Discussion :

Appeler une méthode sur choix d'un élément dans un selectOneMenu


Sujet :

JSF Java

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 8
    Points : 5
    Points
    5
    Par défaut Appeler une méthode sur choix d'un élément dans un selectOneMenu
    Bonjour,
    Voici mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     <h:selectOneMenu id="optionList" value="#{OffresEtServicesBean.selectedPromoName}" >
                            <f:selectItem itemValue="0" itemLabel="Trier les Forfaits" />
                            <f:selectItem itemValue="0" itemLabel="------------------" />
                            <f:selectItems value="#{OffresEtServicesBean.listeItemsPromosForfaits}" />
                        </h:selectOneMenu>
    je voudrais que sur le choix d'un éléments, appeler une méthoden et cette méthode doit être capable de savoir sur quel élément j'ai cliqué.

    Merci d'avance pour votre aide.

  2. #2
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2004
    Messages
    1 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 184
    Points : 1 745
    Points
    1 745
    Par défaut
    Avec un ValueChangeListener tu doit pouvoir faire ça.

    Il te suffit d'appeler la méthode getNewValue() du ValueChangeEvent passé en paramètre.

    @+

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    Merci, j'ai implémenté ceci pour récupérer la valeur de l'élément surlequel j'ai cliqué, et maintenant je veux naviguer vers une autre page, sauf que le problème est que la méthode invokée par le valueChangeListener ne renvoie pas de chaine de caractère contenant l'alias de la page vers laquelle on veut aller.
    Comment faire alors ?

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 8
    Points : 5
    Points
    5
    Par défaut Solution !!
    Solution :
    Deux méthode, une appelée par le selectOneMenu définie dans l'attribut valueChangeListener et une autre qui renvoie la chaine contenant l'alias de la navigation appelée dans la méthode du valueChangeListener


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     <h:selectOneMenu id="promoListItems" 
     
                            value="#{OffresEtServicesBean.selectedPromoName}"
                            onchange="submit()"
                            immediate="true"
                            valueChangeListener="#{OffresEtServicesBean.choisirPromoListener}" >
                                <f:selectItem itemValue="0" itemLabel="Trier les Forfaits" itemDisabled="true" />
                                <f:selectItem itemValue="0" itemLabel="------------------" itemDisabled="true"/>
                                <f:selectItems value="#{OffresEtServicesBean.listeItemsPromosForfaits}" />
                            </h:selectOneMenu>
     
     
    public void choisirPromoListener(ValueChangeEvent valueChangeEvent){
       FacesContext context=FacesContext.getCurrentInstance();
       context.getApplication().getNavigationHandler().handleNavigation(context,"",this.choisirGroupeForfaits());
    }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 20/02/2015, 15h55
  2. Réponses: 7
    Dernier message: 25/07/2013, 12h02
  3. Réponses: 16
    Dernier message: 22/07/2011, 14h12
  4. [C#]Appeler une méthode sur un object
    Par gilles641 dans le forum Windows Forms
    Réponses: 7
    Dernier message: 04/04/2006, 16h38
  5. [EJB] Appeler une méthode sur un EJB
    Par c+cool dans le forum Java EE
    Réponses: 12
    Dernier message: 27/01/2006, 11h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo