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 :

[SelectOneMenu] Problème d'event


Sujet :

JSF Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 38
    Par défaut [RESOLU][SelectOneMenu] Problème d'event
    Bonjour !

    Je rencontre actuellement un problème lors de la gestion d'event sur des selectOneMenu qui "s'alimentent" entre eux.
    C'est à dire que j'ai 3 selectOneMenu avec une relation de type A alimente B et C.

    Voici le code des 3 menus :

    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
    17
    18
    19
    20
     
    <h:form>
    <h:selectOneMenu id="annee"  valueChangeListener="#{contractualisationMB.modifAnneeEvent}"  onchange="submit()" value="#{contractualisationMB.annee}">
    <h:outputLabel value="Année : " />
    <f:selectItems value="#{contractualisationMB.listAnneesSI}"/>
    <a4j:support event="onchange" reRender="contract,client,editeur,anneeContract,etat,tabOnglets" /> 
    </h:selectOneMenu>
    <br/>
    <h:selectOneMenu id="client"  valueChangeListener="#{contractualisationMB.modifClientEvent}" onchange="submit()" value="#{contractualisationMB.client.nom }" >
    <h:outputLabel value="Client : " />
    <f:selectItems value="#{contractualisationMB.listSelectClients}" />
    <a4j:support event="onchange" reRender="contract,editeur,anneeContract,etat,tabOnglets" />
    </h:selectOneMenu>
    <br/>
    <h:selectOneMenu id="contract" valueChangeListener = "#{contractualisationMB.modifContractEvent}" onchange="submit()" >
    <h:outputLabel value="Contractualisation : " />
    <f:selectItems value="#{contractualisationMB.listSelectContractualisations}" />
    <a4j:support event="onchange" reRender="editeur,anneeContract,etat,tabOnglets" />
    </h:selectOneMenu>
    </h:form>

    Mon problème c'est que quand je selectionne une année, l'event de client et contract est levé et execute les actions correspondantes... ce qui ne poserait pas de problème si le NewValue() de chaque (client et contractualisation) n'était pas la valeur selectionnée AVANT d'avoir changé l'année. Résultat je me retrouve avec une correspondance fausse car je me retrouve avec un client et des contrats d'une autre année que celle selectionnée.

    J'aimerai savoir s'il y a moyen d'exécuter les event de client et contractualisation UNIQUEMENT si je sélectionne à la main un élément dans l'un de ces menus ?

    Merci d'avance pour votre aide !

  2. #2
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    dans la première sélection et à l'initialisation, tu mets les valeurs par défaut, tu peux le gérer dans l'action.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 38
    Par défaut
    J'ai pas vraiment compris ce que tu voulais dire mais on peut savoir si l'event du selectonemenu A a été activé dans l'action du B et C pour ainsi ne rien faire dans ce cas ?

  4. #4
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    Citation Envoyé par Yohips Voir le message
    J'ai pas vraiment compris ce que tu voulais dire mais on peut savoir si l'event du selectonemenu A a été activé dans l'action du B et C pour ainsi ne rien faire dans ce cas ?
    oui tu peux ajouter un boolean, lors de la séléction tu change sa valeur ou comparer la valeur du selectOneMenu avec la valeur par défaut.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 38
    Par défaut
    Bonjour !

    J'ai testé la solution des "flag" boolean pour vérifier quel component a vraiment été modifié par l'utilisateur et ça fonctionne bien pour l'instant donc merci pour l'aide et bonne semaine !

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

Discussions similaires

  1. <h:selectOneMenu> problème de valeur
    Par AmineDev9 dans le forum JSF
    Réponses: 3
    Dernier message: 17/05/2009, 22h23
  2. problème d'event sous X11/Motif
    Par awalter1 dans le forum Linux
    Réponses: 7
    Dernier message: 08/07/2008, 18h44
  3. Problème d'event et d'imageContent
    Par greatalain dans le forum Flex
    Réponses: 0
    Dernier message: 03/07/2008, 11h42
  4. [JTable] problème sélection / event
    Par Méta dans le forum Composants
    Réponses: 10
    Dernier message: 26/09/2007, 22h08
  5. Problème avec event handler
    Par MASSAKA dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 15/11/2005, 09h31

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