Bonjourrr,

Je travaille en vb.net
et je souhaite faire un menu vertical déroulant et dynamique
(c'est-à-dire que les noms des menus et sous-menu sont stockées dans la base de données)

j'arrive à créer le menu déroulant en html mais comment le rendre dynamique???
Faut-il utiliser un genre de gridview? un literal ? ou autre???

Code html pour le menu vertical déroulant (non dynamique) :
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
 
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="Javascript">
function clicMenu(num) {
 
// Booléen reconnaissant le navigateur
isIE = (document.all)
isNN6 = (!isIE) && (document.getElementById)
 
// Compatibilité : l'objet menu est détecté selon le navigateur
if (isIE) menu = document.all['menu' + num];
if (isNN6) menu = document.getElementById('menu' + num);
 
// On ouvre ou ferme
if (menu.style.display == "none"){
// Cas ou le tableau est caché
menu.style.display = ""
} else {
// On le cache
menu.style.display = "none"
}
}
</script>
</head>
 
<style type="text/css">
td.titre {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 11px;
color: #000000;
background-color: #959EAD;
cursor: hand
}
td.soustitre {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #000000;
background-color: #C3C9D4;
cursor: hand
}
</style>
 
<body bgcolor="#FFFFFF" text="#000000">
	<table width="200" border="0" cellspacing="1" cellpadding="0">
		<tr>
			<td class="titre" onClick="clicMenu('1')">BMW</td>
		</tr>
		<tr style="display:none" id="menu1">
			<td><table width="200" border="0" cellspacing="0" cellpadding="0">
				<tr>
					<td class="soustitre"> - Série 3</td>
				</tr>
				<tr>
					<td class="soustitre"> - Série 1</td>
				</tr>
			</table></td>
		</tr>
		<tr>
			<td class="titre" onClick="clicMenu('2')">Mercedes</td>
		</tr>
		<tr style="display:none" id="menu2">
			<td><table width="200" border="0" cellspacing="0" cellpadding="0">
				<tr>
					<td class="soustitre"> - Classe R</td>
				</tr>
				<tr>
					<td class="soustitre"> - Classe S</td>
				</tr>
		</table></td>
		</tr>
	</table>
	<br> <br>
</body>
</html>

Avec un literal ça donnerai ça: (je n'ai pas testé)
Requete SQL :
blablabla
SELECT marques, sousmarque
FROM auto
GROUP BY marques, sousmarque
ORDER BY marques, sousmarque
blablabla

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
 
While (row("marque")).count>0)
 
	limarque.text="<tr>"
	limarque.text&="<td class=""titre"" onClick=""clicMenu('1')""> row(""marque"")</td>"
	limarque.text&="</tr>"
 
	While (row("sousmarque").count>0)
	        lisousmarque.text="<tr style=""display:none"" id=""menu1"">"
		lisousmarque.text&="<td><table width=""200"" border=""0"" cellspacing=""0"" cellpadding=""0"">"
		lisousmarque.text&="<tr><td class=""soustitre"">row(""sousmarque"")</td></tr>"
		lisousmarque.text&="</table></td><tr>"
	End While
 
End While

Je ne sais pas si ce code fonctionne, aurez-vous d'autres pistes?

Merci ! ...