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

Servlets/JSP Java Discussion :

[JSP] Problème passage paramètre


Sujet :

Servlets/JSP Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    43
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 43
    Par défaut [JSP] Problème passage paramètre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    	<SELECT property="liste_organismeSelected" name="ListeOrganisme" onChange="window.location='page_choix.jsp?change=1&organisme='+this.choix.ListeOrganisme.options[choix.ListeOrganisme.selectedIndex].value">
    Je recharger ma page JSP lorsque l'utilisateur modifie le select et je passe en paramètre la valeur qu'il a selectionné. Je me plante quelque part mais je sais pas où. Pouvez-vous m'aider?

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 63
    Par défaut
    Quelques remarques (avec un peu de chance ton problème sera résolu par celles-ci) :
    - personnellement j'aurais plutot fait "document.location.href=" que "window.location="
    - "this.choix.ListeOrganisme.options" cherche un élément "choix" dans "this" qui lui pointe sur ton select (et non pas sur ton document). Il faut donc faire "document.choix.ListeOrganisme.options[document.choix.ListeOrganisme.selectedIndex].value
    - une petite fonction javascript rendra ton code bien plus facile a mettre au point

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    43
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 43
    Par défaut
    Merci pour ton aide. ça marche au poil !!!!

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    43
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 43
    Par défaut
    Ce qui m'amène à une autre question :
    Une fois le paramètre récupéré, je veux que ma liste reprenne le même état qu'avant (et non pas que mes listes soient toutes à zero). Comment faire?

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 63
    Par défaut
    Pour cela tu n'as malheureusement pas le choix : il faut passer dans la requête les valeurs sélectionnées dans chaque select. 2 manières de le faire :
    - soit tu les concatènes à l'url de la page comme tu l'as fait précédemment (paires clé-valeur)
    - soit sur le onchange de ton premier select tu fait un submit de ton formulaire ; dans ce cas les valeurs sélectionnées seront automatiquement passées dans la requete ; par contre, comme tu fais un submit, l'attribut "action" de ton form devra avoir pour valeur l'url de ta page en cours. Si la validation "normale" (bouton submit) de ton form amène sur une autre page, il va falloir modifier dynamiquement l'url stockée dans cet attribut action.

    Une fois que tu auras fait ca, il va falloir ajouter une fonction javascript appelée sur le onload du formulaire. Celle ci fera en gros ceci (pas testé) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    //pour chaque select
    var monselect = document.forms[0].monselect;
    var selectedValue = <%= request.getParamerer("monselect")%>;
    var found = false;
    var i  = 0;
    while (i < monselect.options.length && !found) {
      if (monselect.options[i].value == selectedValue) {
        //si la valeur précédemment sélectionnée est trouvée
        monselect.options[i].selected = true;
        found = true;
      }
    }
    Si le contenu de tes select est généré dynamiquement, tu peux évidemment positionner l'attribut selected au moment de l'exécution de ta JSP.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    43
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 43
    Par défaut
    je génère dynamiquement le contenu de mes select mais je ne vois pas comment positionner l'attribut selected.
    Peux-tu me donner un exemple de code?

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

Discussions similaires

  1. [2.2.1] Problème passage paramètres
    Par svanlierde dans le forum BIRT
    Réponses: 18
    Dernier message: 18/04/2008, 12h00
  2. [VB.NET]Problème passage paramètre par référence
    Par biau dans le forum Windows Forms
    Réponses: 4
    Dernier message: 05/02/2008, 14h03
  3. [XI][C#][vs2005] Problème passage paramètre.
    Par Arkan6262 dans le forum SDK
    Réponses: 4
    Dernier message: 14/09/2007, 09h17
  4. [ JSP ] [ JAVASCRIPT ] Passage paramètre tableau
    Par bouchette63 dans le forum Servlets/JSP
    Réponses: 11
    Dernier message: 14/06/2006, 12h22
  5. [ Struts ] [ Jsp ] [ Javascript ] Passage paramètre
    Par bouchette63 dans le forum Struts 1
    Réponses: 7
    Dernier message: 23/05/2006, 14h04

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