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 :

recuperer couple de valeurs des html:radio dans une list


Sujet :

Struts 1 Java

  1. #1
    Candidat au Club
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 15
    Points : 4
    Points
    4
    Par défaut recuperer couple de valeurs des html:radio dans une list
    Salut,
    Je fais actuellement une application avec struts, spring et hibernate.
    Et là je suis confronté à un problème avec le <html:radio>
    J'itere sur les optionsDetails et en fonction d'eux, j'ai des domaineValeurs, c'est-à-dire des radio boutons avec leur libellé.(on m'a demandé de gerer les boutons radio de facon dynamique)
    Voilà maintenant mon soucis c'est de pouvoir recuperer une liste avec à chaque fois le couple optionDetail,DomaineValeur.
    A chaque fois il me faut ces 2 renseignements pour savoir ce que la personne a choisi pour tel optiondetail, et que je puisse l'inserer dans la base.

    Je vous ai mis une image pour que vous comprenez bien ce qu'est une optionDetail et les domaineValeurs, regardez la si besoin est

    Si j'ai 15 optionsDetails , l'utilisateur va coché oui ou non pour chacune, je souhaite recuperer a chaque fois:
    option detail n°1->id domaineValeur=1
    optiondetail n°2->idDomainevaleur=2
    ect... jusqua 15
    Comment FAIRE???
    moi je narrive a recuperer que la premiere ligne au lieu des 15!!

    Voici le code de la jsp qui itere
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <logic:iterate id="OptionDetail" name="formCreerProfil" property="lesOptionsDetails">
                     <tr>
                        <td width="500"><bean:write name="OptionDetail" property="libelle"/></td>      
     
                          <!-- on affiche les domaines valeurs-->
                         <logic:iterate id="DomaineValeur" name="formCreerProfil" property="listDomaineValeur" >
                          <td width="150"><html:radio idName="DomaineValeur" property="identifiant" value="identifiant"><bean:write name="DomaineValeur" property="libelle"/></html:radio></td>
                        </logic:iterate>
     
                    </tr>
                  </logic:iterate>
    Voici un extrait du code de ma classe form GestionProfilForm
    où je declare l'identifiant variable contenant l'id domaine valeur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
      private int indentifiant=1;(le bouton radio sera à 1 par defaut)
    public void setIdentifiant(int identifiant)
      {
        this.identifiant = identifiant;
      }
     
     
      public int getIdentifiant()
      {
        return identifiant;
      }
    Merci de votre aide
    Images attachées Images attachées  

  2. #2
    Membre expérimenté Avatar de willoi
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    1 355
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 355
    Points : 1 639
    Points
    1 639
    Par défaut
    Et c est quoi exactement la question ?
    Le code de ton Action ?

  3. #3
    Candidat au Club
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 15
    Points : 4
    Points
    4
    Par défaut
    Et bien, disons que j'ai 15 optionsDetails et pour chacune, l'utilisateur va coché oui ou non, je souhaite recuperer a chaque fois:
    option detail n°1->id domaineValeur=1
    optiondetail n°2->idDomainevaleur=2
    ect... jsuqua 15
    moi je narrive a recuperer que la premeire ligne au lieu des 15, je ne recpere pas de List
    Dans mon action je récupere l'identifiant avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     int id=formulaire.getIdentifiant();
    Or je devrais récuperer une List d'option DEtail avec DomaineValeur

  4. #4
    Membre expérimenté Avatar de maxf1
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 229
    Points : 1 371
    Points
    1 371
    Par défaut
    Et avec les tag nested as-tu deja essayé?
    Une solution a été apporté pour résoudre votre problème alors vous aussi faites en profitez les autres grâce au tag qui se trouve tout en bas de la page....

    Merci de ne pas utiliser les messages privés pour un problème sauf si je vous l'ai explicitement demandé.

    -- Maxf1 --

  5. #5
    Candidat au Club
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 15
    Points : 4
    Points
    4
    Par défaut no j'ai pas essayé
    no j'ai pas essayé pkoi?
    Nested est juste une extension du html:radio donc ca change rien à mon probleme

  6. #6
    Membre expérimenté Avatar de maxf1
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 229
    Points : 1 371
    Points
    1 371
    Par défaut
    Ok j'avais pas bien compris ton probleme.
    Si tu veux récupérer une list il faut que identifiant soit une arrayList, voir meme une TreeMap car plus simple pour avoir un couple clé, valeur or tu fais formulaire.getIdentifiant qui te retourne un int, c'est pas un peu bizarre?

    Post le code de ton actionForm et Action
    Une solution a été apporté pour résoudre votre problème alors vous aussi faites en profitez les autres grâce au tag qui se trouve tout en bas de la page....

    Merci de ne pas utiliser les messages privés pour un problème sauf si je vous l'ai explicitement demandé.

    -- Maxf1 --

  7. #7
    Candidat au Club
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 15
    Points : 4
    Points
    4
    Par défaut
    Ah oui mais en fait à la base si j'ai fait un getIdentifiant c'est parce que, je voulais voir si je pouvais recuperer la value du premier radio bouton choisit par l'utilisateur, et j'ai reussi mais bien sûr, à l'avenir j'aurai plusieurs radio boutons donc là, je dois absolument recuperer une liste de choix de l'utilisateur et je tavouerai que je suis bloqué donc pas la peine de te montrer mon bean action et mon bean form.

  8. #8
    Membre expérimenté Avatar de maxf1
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 229
    Points : 1 371
    Points
    1 371
    Par défaut
    Ben il suffit de faire une methode (dans le cas d'une hashMap)

    String getIdentifiant(String cle) qui renvoit la value de ta clé.
    void setIdentifiantString cle, String value) qui set ta value dans la hashMap

    Lorsque tu auras fait ca ca devrait marcher!!
    Une solution a été apporté pour résoudre votre problème alors vous aussi faites en profitez les autres grâce au tag qui se trouve tout en bas de la page....

    Merci de ne pas utiliser les messages privés pour un problème sauf si je vous l'ai explicitement demandé.

    -- Maxf1 --

  9. #9
    Candidat au Club
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 15
    Points : 4
    Points
    4
    Par défaut
    j'ai ajouté un indexed=true dans mon html:radio, en faisant cela, il itere par rapport au logic:iterate juste avant, et dans le code source de la page ,à la propriete name j'ai

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <input type="radio" name="DomaineValeur[0].identifiant" value="identifiant">Non</td>
     
     <input type="radio" name="DomaineValeur[1].identifiant" value="identifiant">Oui</td>
    Or c'est faux comme vous pouvez le remarquez, puisque les 2 name n'ont pas la même valeur!!!

    Yat-il un moyen pour que l'indexage de mon html radio se fasse par rapport au logique:iterate qui englobe le tout et qui se trouve un rang au dessus et qui a pour indexId Countop!
    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
     
    <logic:iterate id="OptionDetail" name="Theme" property="lesOptionsDetails" indexId="countop">
                     <tr>
                        <td width="500"><bean:write name="OptionDetail" property="libelle"/></td>      
     
                      <!-- on affiche les domaines valeurs-->
                      <%!int num;%>
                      <%num=((Integer)countop).intValue();%>
                       <%=num%>
                         <logic:iterate id="DomaineValeur" name="OptionDetail" property="listeDomaineValeur" >
                          <td width="150"><html:radio indexed="true" name="DomaineValeur" property="identifiant" value="identifiant"><bean:write name="DomaineValeur" property="libelle"/></html:radio></td>
                        </logic:iterate>
     
                    </tr>
                  </logic:iterate>

  10. #10
    Membre expérimenté Avatar de maxf1
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 229
    Points : 1 371
    Points
    1 371
    Par défaut
    Tu t'entetes?

    As-tu essayé ce que je t'ai dit juste dans le post d'avant? Ou bien les HashMap (TreeMap si tu veux trier) ca ne te tente psa?
    Une solution a été apporté pour résoudre votre problème alors vous aussi faites en profitez les autres grâce au tag qui se trouve tout en bas de la page....

    Merci de ne pas utiliser les messages privés pour un problème sauf si je vous l'ai explicitement demandé.

    -- Maxf1 --

  11. #11
    Candidat au Club
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 15
    Points : 4
    Points
    4
    Par défaut
    j'ai pas trop capté comment s'utilise l'objet HashMap, mais est ce que le fait d'utiliser une hashMap va changer ma propriete name?

    A la base quand j'ai posté mon soucis c'etait de recuperer mon couple de valeur, mais en fait j'ai un probleme bien plus profond avant celui là!
    Mon problème se situe au niveau des mes name, quand j'édite le code source.
    J'ai fait un autre post car c'est pas le même probleme.
    http://www.developpez.net/forums/sho...d.php?t=288554

  12. #12
    Membre expérimenté Avatar de maxf1
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 229
    Points : 1 371
    Points
    1 371
    Par défaut
    Un objet HashMap est une liste avec un couple clé valeur :
    Exemple :


    HashMap a = new HashMap();
    a.put("name1", "true");
    a.put("name2", "true");
    a.put("name3", "false");


    Avec un logic iterate tu parcours toute tes clés, et tu récuperes toutes les valeurs que tu settes dans les radio.
    Je ne sais pas si je suis très clair. Si j'ai le temps de faire un exemple je te le posterais.

    Sinon tu as regarder du coté de struts layout qui te permet avec un tag spécial d'afficher une liste de radio button? (ca par contre j'ai jamais essayé)
    Une solution a été apporté pour résoudre votre problème alors vous aussi faites en profitez les autres grâce au tag qui se trouve tout en bas de la page....

    Merci de ne pas utiliser les messages privés pour un problème sauf si je vous l'ai explicitement demandé.

    -- Maxf1 --

  13. #13
    Candidat au Club
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 15
    Points : 4
    Points
    4
    Par défaut
    non j'ai pas trop regardé les tags struts layout, depuis le début de mon projet j'utilises les tags struts html mais bon vu que je galere vraiment là, peut-être je vais regarder si c'est pas plus simple avec les tag layout.
    Mai déjà faut que je règle mon probleme de name.

Discussions similaires

  1. Réponses: 4
    Dernier message: 15/11/2011, 06h28
  2. Réponses: 14
    Dernier message: 01/07/2009, 13h49
  3. Réponses: 15
    Dernier message: 21/12/2008, 19h31
  4. Récupérer la valeur des champs calculés dans une requète SQL dans vba
    Par FrédéricCM dans le forum Requêtes et SQL.
    Réponses: 12
    Dernier message: 28/06/2006, 16h29
  5. [C#] Lier des boutons radio dans une application mobile
    Par Loïc56 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 22/04/2005, 13h00

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