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 :

Redirection automatique à partir d'un SelectOneMenu


Sujet :

JSF Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 112
    Par défaut Redirection automatique à partir d'un SelectOneMenu
    Salut tout le monde, j'ai besoin d'aide sur un petit probleme, je m'explique :

    j'ai cette liste deroulante (SelectOneMenu) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <h:selectOneMenu value="#{option.choix}"  id="lineDirection" 
    	onchange="submit()"
        valueChangeListener="#{option.validerliste}" > 
     <f:selectItems value="#{option.listechoix}" />
    </h:selectOneMenu>
    listechoix contient :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    options.add(new SelectItem(String.valueOf(new Integer(1)),"Modification"));
    options.add(new SelectItem(String.valueOf(new Integer(2)), "Création"));
     
     
    ==> listechoix.addAll(getOptions());
    Probleme : Lorsque je choisie un element de la liste, je veux que le systeme me redirige automatiquement vers la page voulue (sans utiliser Ajax)

    merci d'avance ...

  2. #2
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2008
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2008
    Messages : 179
    Par défaut
    Bonjour,

    une piste pourrait être du côté d'un petit script et d'une paire de boutons cachés associés à ton choix.

    le script ressemblerait à qqchose comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    function triggerUserChoice(selectMenu){
        if (selectMenu.value=='Modification'){
           $('hiddenModificationButton').click();}
        if (selectMenu.value=='Creation'){
           $('hiddenCreationButton').click();}
    }
    (si jQuery ($) n'est pas installé, remplace le $(id) par document.getElementById(id)

    Les boutons à ça...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <h:outputLink id="hiddenModificationButton"
                     value="UneRegleDeNavigationVersTaPageDeModificationDefinieDansTonFacesConfig.xml"
                    style="display: none;"/>
    <h:outputLink id="hiddenModificationButton"
                     value="UneRegleDeNavigationVersTaPageDeCreationDefinieDansTonFacesConfig.xml"
                    style="display: none;"/>

    Et pour terminer, ta liste :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <h:selectOneMenu value="#{option.choix}"  id="lineDirection" 
    	onchange="triggerUserChoice(this)"
        valueChangeListener="#{option.validerliste}" > 
     <f:selectItems value="#{option.listechoix}" />
    </h:selectOneMenu>
    Par contre, je ne sais pas si tu ne vas pas avoir un problème d'ordre d'exécution liés à ton listener... à tester!

    Et de façon plus générale, rien de tout ça n'est testé : ce n'est qu'une piste. Cependant, ça ressemble à des choses que j'ai déjà faites, donc si ce n'est pas forcément la meilleure solution, c'est au moins une piste valable.

    J'espère en tous cas que ça t'aidera.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 112
    Par défaut
    Merci Roger_Rabbit pour ta reponse, j'ai testé la solution que tu m'as proposé mais ça marche pas, par contre j'ai pensé d'utiliser le JavaScript


    j'ai fais ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
    <h:selectOneMenu  id="lineDirection" 	
    	onchange="window.location=eval('this.options[this.selectedIndex].value')">
    <f:selectItems value="#{option.listechoix}" />
    </h:selectOneMenu>
    on passe le nom de la page directement sur notre beans "options" comme index du valeur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
    options.add("modification.jsp" , "Modification"));
    options.add("creation.jsp" , "Création"));
     
    listechoix.addAll(getOptions());
    ça marche très très bien, c'est plus facile et plus pratique

    Merci une autre fois Roger_Rabbit pour ton aide

  4. #4
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2008
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2008
    Messages : 179
    Par défaut
    En effet, c'est une jolie solution, et plus propre que la mienne (elle doit fonctionner à un ou deux détails près, mais je n'ai pas le temps de creuser plus aujourd'hui).
    Du coup c'est moi qui te remercie : j'ai appris quelque chose !

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

Discussions similaires

  1. [JSP] Redirection automatique
    Par Crazyblinkgirl dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 08/08/2011, 10h24
  2. Redirection automatique avec selectOneMenu
    Par iliass001 dans le forum JSF
    Réponses: 2
    Dernier message: 09/07/2011, 01h07
  3. Redirection automatique à partir d'un moment précis
    Par Mister Paul dans le forum Langage
    Réponses: 18
    Dernier message: 20/11/2008, 16h50
  4. Redirection automatique lors d'une sélection dans un Select
    Par MiJack dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 21/12/2004, 18h09
  5. Réponses: 2
    Dernier message: 15/06/2004, 11h22

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