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 :

Recupérer valeur select en jsp


Sujet :

Servlets/JSP Java

  1. #1
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Février 2005
    Messages
    118
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2005
    Messages : 118
    Points : 64
    Points
    64
    Par défaut Recupérer valeur select en jsp
    Bonsoir,

    Je voudrais recuperer une valeur selectionnee d'un select (html) dans une page jsp mais je n'y arrive pas.

    Le code :

    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
    <td><FORM>
    <SELECT name="qte" size="1">
    <% 
    int i;
    int j = 0;
    for (i = 1; i <= item.getQte(); i++) {%>
    <OPTION><%= i %></OPTION>
    <%
    }
    %>
    </SELECT>
    </FORM></td>
    <td><a href="AchatServlet?idproduit=<%= item.getProduits().getId() %>&quantite=<%= i %>" > acheter ce produit</a></td>
    </tr>
    <%
    }}
    %>
    Merci d'avance

  2. #2
    Membre expert Avatar de Fench
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mai 2002
    Messages
    2 353
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Groenland

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 353
    Points : 3 390
    Points
    3 390
    Par défaut
    Salut,

    En JavaScript, tu peux faire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
                function qte_onclick() {
     
                     var chaine = document.form_select.lb_select.value;
                     // traitement qq
                }
    Et ceci pour un select tel que:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <select onclick="qte_onclick()"  name="qte" size="1">
    Meuuh en AI à l'INRA
    Domaines: {java, php, js, jquery}{hibernate, doctrine}{MyLib, symfony, Zend}
    fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes (balise à cliquer en bas de l'écran)

  3. #3
    Membre éprouvé
    Avatar de kmdkaci
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    560
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 560
    Points : 950
    Points
    950
    Par défaut Recuperer valeur select en jsp
    Bonjour,
    Je remarque dans ton code les anomalies suivantes (A moins que je n'ai pas bien compris les choses)

    - Ta variable i, à la sortie de la boucle, il est clair qu'elle a une valeur supérieur à la taille de Select. Donc si tu fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <%= item.getProduits().getId() %>&quantite=<%= i %>
    Tu n'obtiens rien.

    - Je remarque aussi plus d'accolades fermantes qu'ouvrantes, à moins que c'est juste une partie du code.

    Sinon, par rapport, au code JavaScript proposé par Fench, je ne vois pas l'intérêt de récupérer les valeurs en JavaScript alors que tu veux envoyer ces éléments à la servlet, c'est à dire traitement coté serveur.

    Merci

  4. #4
    Membre expert Avatar de Fench
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mai 2002
    Messages
    2 353
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Groenland

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 353
    Points : 3 390
    Points
    3 390
    Par défaut
    Le code javascript c pour faire du traitement dans la jsp

    Pour le côté servlet, il me semble que nous avions déjà traité cela hier

    voili, voilà

    Maintenant pour les erreurs du code source, il me semble qu'il ne doit être complet (comme le j par ex ...)
    En dernier, je crois q'ui y a utilisation du i (donc valeur non importante) pour pallier à ce pb de récupération de la valeur du select.
    Meuuh en AI à l'INRA
    Domaines: {java, php, js, jquery}{hibernate, doctrine}{MyLib, symfony, Zend}
    fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes (balise à cliquer en bas de l'écran)

  5. #5
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Février 2005
    Messages
    118
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2005
    Messages : 118
    Points : 64
    Points
    64
    Par défaut
    Je vais essayer le code javascript.

    Pour le code, il n'est pas complet.

    Comment je récupere la valeur de la fonction pour le mettre dans le lien ?

  6. #6
    Membre expert Avatar de Fench
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mai 2002
    Messages
    2 353
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Groenland

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 353
    Points : 3 390
    Points
    3 390
    Par défaut
    Bonjour,

    Il faut voir le pb du serveur/client:
    Ta page jsp est une demande au serveur qui donne un affichage avec ta liste déroulante, formulaires boutons et autres ...

    Toi tu veux récupérer la valeur sélectionnée de la liste pour l'afficher dans un lien tout de suite après la création de la liste DONC c pas possible vue comme celà (à part de l'ajax qui est du javascript avec requête au serveur).

    Pour ton cas le mieux serait de passer par une servlet controleur, cad de revenir au serveur puis de réafficher ta page (ou une autre page).

    En gros ce serait Serveur->JSP sans lien->select dans la liste->Serveur(Servlet)->JSP avec le lien mis à jour.

    Pour passer d'une jsp à une servlet et vice versas, ya pleins de posts à ce sujet sur les setteurs, getteurs d'attributs et/ou de paramétres.
    (cf request.getAttribute par ex)
    Meuuh en AI à l'INRA
    Domaines: {java, php, js, jquery}{hibernate, doctrine}{MyLib, symfony, Zend}
    fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes (balise à cliquer en bas de l'écran)

  7. #7
    Expert éminent

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Points : 7 778
    Points
    7 778
    Par défaut
    Tu peux soumettre le formulaire via l'attribut onchange du tag select.
    Ainsi, la quantité sélectionnée sera passée en paramètre de la request et tu pourras la récupérer via un request.getParameter.

    Cela donnerait quelque chose du style :
    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
    21
    <td><FORM>
    <SELECT name="qte" size="1" onchange="submit();">
    <% 
    int i;
    int j = 0;
    for (i = 1; i <= item.getQte(); i++) {%>
    <OPTION><%= i %></OPTION>
    <%
    }
    %>
    </SELECT>
    </FORM></td>
    <%
       String qte="" ;
       if ( request.getParameter("qte") != null )
       {
           qte=request.getParameter("qte") ;
       } ;
    %>
    <td><a href="AchatServlet?idproduit=<%= item.getProduits().getId() %>&quantite=<%= qte %>" > acheter ce produit</a></td>
    </tr>
    Modératrice Java - Struts, Servlets/JSP, ...

Discussions similaires

  1. recupérer la valeur select
    Par laure07 dans le forum Langage
    Réponses: 2
    Dernier message: 10/05/2012, 16h07
  2. Recupérer valeur dans textbox quand selection dans ComboBox
    Par typhoon751 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 27/10/2010, 09h40
  3. recupérer champs <select> dans une jsp
    Par marry dans le forum Servlets/JSP
    Réponses: 11
    Dernier message: 19/05/2009, 14h59
  4. passage valeur select par URL
    Par toome dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 09/08/2005, 11h51
  5. Recupération des selections sur une DBGrille multi Selection
    Par Andry dans le forum Bases de données
    Réponses: 1
    Dernier message: 26/11/2004, 11h43

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