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 :

deux listes deroulantes liées


Sujet :

JSF Java

  1. #1
    Nouveau membre du Club
    Inscrit en
    Avril 2007
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 94
    Points : 30
    Points
    30
    Par défaut deux listes deroulantes liées
    Bonjour j'ai un problème avec les listes deroulantes.
    j'en ai deux dans un même formulaire et le choix de la valeur choisie dans l'une modifie le contenu de l'autre.
    le problème que j'ai est que lorsque je modifie la valeur de la premiere le onchage de la seconde est appelé mais pas au même moment que l'autre mais lorsque la page est rafréchie une deuxieme fois ce qui fait que les deux listes ne sont pas synchronisées et donc ce que j'affiche dans ma page est faux.
    j'espere que me suis bien expliqué
    Merci pour votre aide.

  2. #2
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Points : 7 679
    Points
    7 679
    Par défaut
    ?????????


    Citation Envoyé par skanderb
    j'espere que me suis bien expliqué
    Franchement, non !

  3. #3
    Nouveau membre du Club
    Inscrit en
    Avril 2007
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 94
    Points : 30
    Points
    30
    Par défaut
    je précise.
    j'ai une liste qui contient un ensemble de departements
    l'autre liste contient les villes associées au département choisi dans la premiere liste.

    jusque là ça va??????

    lorsque je choisi un departement il doit mettre à jour la liste des villes et m'afficher une datatable d'informations sur la prmière ville de la liste. OK?

    le problème est:

    je choisit le département 92: il met à jour la liste des villes dans le 92 et affiche la datatable de la ville ("toto" par exemple) correctement.
    ensuite qd je choisi le departement 93 il met à jour la liste des villes mais la valeur de la liste reste ("toto") et il apelle le onchange de la liste des villes.

    c'est encore pas trés claire je sais je comprend à peine aussi.


    Bon en plus court
    l'appel du onchange des deux listes est décalé.
    je voudrai savoir comment faisre pour que les onchage des deux listes se fassent en meme temps ou comment ne pas appeler le onchage de la deuxime.

  4. #4
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Points : 7 679
    Points
    7 679
    Par défaut
    c'est bcp plus clair mnt ! Merci.

    Je te suggère d'ajouter systématiquement une option vide comme premier paramètre de la deuxième liste. càd :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     list1.onchange(){
      list2.clear();
     
      list2.add("", "");
     
      list2.add("Ville1", "1");
      list2.add("Ville2", "2");
      list2.add("Ville3", "3");
      :
      :
    }
    théoriquement, cet élément vide sera selectionné par défaut.
    Ensuite, dans l'affichage des informations sur une ville, tu ajoutes un test qui vérifie si la ville courante est vide ou non.

  5. #5
    Nouveau membre du Club
    Inscrit en
    Avril 2007
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 94
    Points : 30
    Points
    30
    Par défaut
    je vais essayer merci

    le problème c'est qu'au premier affichage de la page je dois afficher les informations de la premiere ville de la liste donc je ne peut pas mettre un champ vide

  6. #6
    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
    Points : 5 059
    Points
    5 059
    Par défaut
    salut,

    il faut à chaque selection d'un element de ta liste, envoyer la valeur au seveur et rafraichir la page.

    une bonne solution pour pour ça est d'utiliser Ajax, Ajax for JSF est très pratique, facile à utiliser..

  7. #7
    Nouveau membre du Club
    Inscrit en
    Avril 2007
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 94
    Points : 30
    Points
    30
    Par défaut
    ah àa c pas dans mes spec donc ajax je peus pas utiliser je dois m'arreter au jsf 1.0

  8. #8
    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
    Points : 5 059
    Points
    5 059
    Par défaut
    Citation Envoyé par skanderb
    ah àa c pas dans mes spec donc ajax je peus pas utiliser je dois m'arreter au jsf 1.0
    dans cecas, faut que tu joues avec du java script, ça va etre un peu long..surtout avec jsf..à chaque modification, fautfaire un submit du form, et recharger la page au retour du serveur ..

  9. #9
    Nouveau membre du Club
    Inscrit en
    Avril 2007
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 94
    Points : 30
    Points
    30
    Par défaut
    je te remercie pour ta reponse
    mais serieusement je ne vois pas comment faire.

    est ce que je peus faire un binding entre ma premiere liste et l'objet de la deuxieme et est ce que vous pensez que ça pourrait resoudre mon probleme

  10. #10
    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
    Points : 5 059
    Points
    5 059
    Par défaut
    Citation Envoyé par skanderb
    est ce que je peus faire un binding entre ma premiere liste et l'objet de la deuxieme et est ce que vous pensez que ça pourrait resoudre mon probleme
    c'est quoi ton problème, il suffit de charger les bons éléments de la deuxième liste.et ça tu dois le faire coté serveur.lorsque tu modifie la première liste tu envoi au serveur la valeur selectionnée et tu fait un set sur la deuxième liste avec les valeurs correspondantes.au retour de ta page tu fais un refresh...

  11. #11
    Nouveau membre du Club
    Inscrit en
    Avril 2007
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 94
    Points : 30
    Points
    30
    Par défaut
    c'est bon merci les gars il fallait utiliser un binding et forcer la valeur de la deuxieme liste
    ca roule

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

Discussions similaires

  1. deux liste deroulante liées
    Par smix13 dans le forum IHM
    Réponses: 5
    Dernier message: 10/02/2009, 16h00
  2. Plus de deux listes déroulantes liées
    Par Mateache dans le forum ASP
    Réponses: 2
    Dernier message: 23/08/2006, 12h00
  3. Deux listes deroulantes liées entre elles
    Par killerhertz dans le forum ASP
    Réponses: 4
    Dernier message: 16/07/2006, 22h43
  4. [AJAX] listes deroulantes liées x3
    Par Tempotpo dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 20/04/2006, 16h55
  5. deux listes deroulantes dependantes
    Par Coulibaly dans le forum Access
    Réponses: 1
    Dernier message: 05/04/2006, 16h16

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