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

Struts 1 Java Discussion :

Problème récupération des valeurs dans un formulaire


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Novembre 2008
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 12
    Par défaut Problème récupération des valeurs dans un formulaire
    Bonjour,
    j'ai une liste d'objet que je doit afficher et une zone de texte à coté de chaque objet. Ce qui fait que j'ai le même nom pour toutes les zones de texte qui sont ajoutées selon le nombre des objet de la liste.
    Comment faire pour récupérer toutes les valeurs qu'on a saisi dans les zones de texte.
    Merci.

  2. #2
    Membre émérite Avatar de noOneIsInnocent
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    1 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 037
    Par défaut
    Bonjour

    je ne suis pas sûr d'avoir tout compris mais en tout cas vous pouvez toujours essayer de récupérer les valeurs en générant des id différents pour chaque champs textes au lieu de se baser sur les noms
    ou bien générer les noms de manière dynamique ...

    Essayer de poster une partie du code de la JSP et du struts-config.xml ?
    Ce sera plus pratique pour vous aider

  3. #3
    Membre habitué
    Inscrit en
    Novembre 2008
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 12
    Par défaut
    Merci pour votre réponse,
    La page jsp:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     <logic:iterate id="a" name="df" property="attributs">
        <html:hidden name="a" property="idAttribute"/>
         <tr>
         <td><bean:write name="a" property="name"/></td>
         <td><html:text styleClass="text1" name="df" styleId="value" property="value"/></td>
         </tr>
    </logic:iterate>
    attributs est une liste d'objets Attribut(id,name,..)
    Mais la je dois sauvegarder les données dans une autre table. ValeursAttribut(id,idAttribut,value);
    La zone de texte value ne récupère que la première valeur saisie.

  4. #4
    Membre habitué
    Inscrit en
    Novembre 2008
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 12
    Par défaut
    Je sais qu'il faut travailler avec indexId.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <logic:iterate id="a" name="df" property="attributs" indexId="idx">
    	<html:hidden name="a" property="idAttribute"/>
    	<tr>
    	  <td><bean:write name="a" property="name"/></td>
    	  <td><html:text styleClass="text1" name="df" styleId="value" property="value" indexed="true"/></td>
    	</tr>
    </logic:iterate>
    mais je ne sais pas comment récupérer la valeur de chaque ligne.

    Merci.

  5. #5
    Membre émérite Avatar de noOneIsInnocent
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    1 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 037
    Par défaut
    Citation Envoyé par plop5 Voir le message

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <logic:iterate id="a" name="df" property="attributs" indexId="idx">
        <html:hidden name="a" property="idAttribute"/>
        <tr>
          <td><bean:write name="a" property="name"/></td>
          <td><html:text styleClass="text1" name="df" styleId="value<%=idx%>" property="value" indexed="true"/></td>
        </tr>
    </logic:iterate>
    tu pourrais rajouter ton idx dans l'id de ton champs text et dans ton action tu fais une boucle sur le nombre d'éléments à récupérer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    request.getAttribute("value" +idx);//

  6. #6
    Membre habitué
    Inscrit en
    Novembre 2008
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 12
    Par défaut
    j'ai essayé:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    request.getAttribute("value" +idx);
    Mais il retourne null0,null1...
    La valeur de la zone de texte retourne null, normal parce que dans le form bean, elle est nommée value mais indexId ajoute un index au nom.

    dans l'action:
    je récupère la valeur par le getter de la propriété value:
    df.getValue();

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 29/10/2014, 16h05
  2. [MySQL] récupération des valeurs d'un formulaire d'une page dans une autre page
    Par CSI2012 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 06/02/2013, 13h43
  3. Réponses: 4
    Dernier message: 09/10/2011, 13h22
  4. [debutant]sauvegarde des valeurs dans un formulaire
    Par pimousse_cerise dans le forum JSF
    Réponses: 7
    Dernier message: 15/06/2007, 09h56
  5. Réponses: 6
    Dernier message: 15/02/2006, 14h02

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