Bonjour,
je suis entrain de faire dans une page jsp deux listes où la deuxième liste depend de la valeur prise par la première liste.
Je suis arrivé à faire le lien entre les deux listes mais j'ai encore deux problèmes:
1- lors du premier chargement de la page ma deuxième liste est vide;
2- aprés que je change la première liste, les valeurs de la duxième changent mais je ne garde pas la valeur de la première liste sélectionnée.
voici le code utilisé:
1- dans la jsp:
2- dans l'action:
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
39
40
41
42
43
44
45
46
47
48
49
50
51 <% Collection versions = (Collection)request.getAttribute("versions"); %> <html:form action="/Mesactions" name="f" type="bean.EquipementForm" > <tr> <td width="180"><strong class="Style5">Type</strong></td> <td width="282"><html:select property="typeEquipement" onchange="document.forms['f'].action='Mesactions.do?reqCode=Action3';document.forms['f'].submit();"> <% EquipementDao dao=new EquipementDao(); Collection equipements=(Collection)dao.GetEquipement(); Iterator iter = equipements.iterator(); while(iter.hasNext()) { EquipementForm equipement = (EquipementForm)iter.next(); %> <html:option value="<%= equipement.getTypeEquipement()%>" /> <% } %> </html:select> </td> </tr> <tr> <td><strong>Version</strong></td> <td width="282"><html:select property="version" > <% Iterator iter1 = versions.iterator(); while(iter1.hasNext()) { EquipementForm equipement1 = (EquipementForm)iter1.next(); %> <html:option value="<%= equipement1.getVersion()%>" /> <% } %> </html:select></td> </tr> </table> <p align="center"> <div align="center"> <html:submit >Envoyer</html:submit> <INPUT type="hidden" name="reqCode" value=""> </div> </td> </tr> </html:form>
3- dans struts-config:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 public ActionForward Action3(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { EquipementForm equipement = (EquipementForm)form; request.setAttribute("equipement",equipement); EquipementDao operation = new EquipementDao(); request.setAttribute("versions",operation.GetVersion(equipement.getTypeEquipement())); return mapping.findForward("memePage"); }
Merci d'avance.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <action path="/Mesactions" type="action.Mesactions" name="EquipementForm" scope="session" parameter="reqCode" attribute="EquipementForm"> <forward name="memePage" path="/jsp/modifier.equipement.jsp"/> </action>
Partager