[jsp+js] élément selectionné dans liste déroulante
Bonjour,
je développe actuellement une application j2ee avec donc des jsp/servlet ainsi qu'hibernate.
Sur ma jsp , j'ai actuellement deux listes déroulantes : les services , les utilisateurs.
Ce que je voudrais c'est les lier entre elles , à savoir , afficher les utilisateurs du service selectionné, mais sans utiliser ajax.
J'ai donc ma premiere liste, un bouton qui lance une fonction js qui est sencée charger les données de ma seconde liste, or je n'y arrive pas :(
Voici le code que j'ai actuellement :
Code:
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
|
<!-- partie d'identification -->
<table border cellspacing="10px">
<tr >
<td >
<select name="structures" id="structures">
<% Iterator it1 = GetList.getStructureList().iterator();
String s=null;
while(it1.hasNext()){
Structure struct =(Structure)it1.next();
s=struct.getNom();
%>
<option value="<%=struct.getId()%>"> <%=s%></option>
<%}%> </select>
<input type="button" value="voir" onClick="chargerUtilisateurs()" />
</td>
<td>
<select name="utilisateurs">
<option value="vide"></option>
<% Iterator it2 = GetList.getUtilisateurList().iterator();
String p=null;
while(it2.hasNext()){
Utilisateur util =(Utilisateur)it2.next();
p=util.getNom()+" "+util.getPrenom();
%>
<option value="<%=util.getNom()%>.' '.<%=util.getPrenom()%>"> <%=p%></option>
<%}%> </select>
</td>
</tr>
</table> |
Code:
1 2 3
| function chargerUtilisateurs() {
} |
Code:
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
| public class GetList {
public static List getStructureList()
{
Session session = HibernateUtil.currentSession();
List structures = null;
try{
structures = StructureDAO.getInstance().findAll("nom");
}catch(Exception ex){
ex.printStackTrace();
}
return structures;
}
public static List getUtilisateurList(int id)
{
Session session = HibernateUtil.currentSession();
List utilisateurs = null;
try{
//utilisateurs = UtilisateurDAO.getInstance().findAll("nom");
Query query=session.createQuery("select nom,prenom from Utilisateur where id_compte in ( select id_compte from affectation where id_structure="+id);
utilisateurs =query.list();
}catch(Exception ex){
ex.printStackTrace();
}
return utilisateurs;
} |
Ce qu'il faudrait c'est que je puisse recuperer l'element selectionné dans la liste et lancer une requete en prenant cet element en parametre d'entrée pour ensuite charger les utilisateurs correspondant.