Salut les gens !
j'ai un questionnaire : des questions, et des listes de choix pour chaque question.
1 bean Question
1 bean QuestionChoices
Le bean Question, contient 1 List<QuestionChoices> choices.
donc j'ai une boucle pour afficher les questions, et une boucle pour afficher les réponses possibles (nommées choix).
tout ça est OK, l'affichage est correct.
les réponses sont affichés avec un bouton radio.
et là horreur, ils ont tous les mêmes name : "choices".
donc pas possible de les diférencier ..
l'attribut indexed="true" ne résout pas mon prb car du coup chaque premiere reponse le meme name (name = "question[0].choices")
J'ai du rater qqch, merci de m'aiguiller.
et ici le résultat généré :
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 <logic:iterate name="gameForm" id="question" property="questions" indexId="count"> <div class="questionFieldName quizz"> <bean:write name="count"/> - <bean:write name="question" property="libelle"/> </div> <div class="choicesFieldName quizz"> <logic:iterate name="question" id="choice" property="choices" indexId="countRadio" > <label for="radio_<bean:write name='count'/>_<bean:write name='countRadio'/>"> <html:radio property="choices" name="question" value="id" idName="question" indexed="true"> <bean:write name="choice" property="libelle"/> </html:radio> </label> <br /> </logic:iterate> </div> <br /> </logic:iterate>
merci de votre aide
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
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 <div class="questionFieldName quizz"> 0 - Question 1 ? </div> <div class="choicesFieldName quizz"> <label for="radio_0_0"> <input type="radio" value="1" name="question[0].choices"/> réponse 1.1 </label> <br/> <label for="radio_0_1"> <input type="radio" value="1" name="question[1].choices"/> réponse 1.2 </label> <br/> <label for="radio_0_2"> <input type="radio" value="1" name="question[2].choices"/> réponse 1.3 </label> <br/> </div> <br/> <div class="questionFieldName quizz"> 1 - Question 2 ? </div> <div class="choicesFieldName quizz"> <label for="radio_1_0"> <input type="radio" value="2" name="question[0].choices"/> réponse 2.1 </label> <br/> <label for="radio_1_1"> <input type="radio" value="2" name="question[1].choices"/> réponse 2.2 </label> <br/> <label for="radio_1_2"> <input type="radio" value="2" name="question[2].choices"/> réponse 2.3 </label> <br/> </div>
Partager