Hola, no se si te sirva para unos List/Menu con valores tomados de una base de datos, pero este javascript asocia un List/Menu con otro List/Menu, revisalo ojala te sirva:
Código HTML:
<html>
<head>
<title>
FAQ-1: Selects
</title>
<script language="JavaScript">
function addOpt(oCntrl, iPos, sTxt, sVal){
var selOpcion=new Option(sTxt, sVal);
eval(oCntrl.options[iPos]=selOpcion);
}
function cambia(oCntrl){
while (oCntrl.length) oCntrl.remove(0);
switch (document.frm.pais.selectedIndex){
case 0:
addOpt(oCntrl, 0, "Ciudad de México", "0");
addOpt(oCntrl, 1, "Monterrey", "1");
addOpt(oCntrl, 2, "Guadalajara", "2");
break;
case 1:
addOpt(oCntrl, 0, "Madrid", "0");
addOpt(oCntrl, 1, "Barcelona", "1");
addOpt(oCntrl, 2, "San Sebastián", "2");
break;
case 2:
addOpt(oCntrl, 0, "Caracas", "0");
addOpt(oCntrl, 1, "Coro", "1");
addOpt(oCntrl, 2, "Maracay", "2");
addOpt(oCntrl, 3, "Valencia", "3");
break;
}
}
</script>
</head>
<body>
<script language="JavaScript">
var w = 400;
var h = 150;
resizeTo(w, h);
moveTo((screen.width - w)/ 2, (screen.height - h)/ 2);
</script>
<form name="frm">
<table border="0">
<tr>
<td>
Pais
</td>
<td>
<select name="pais" onchange="cambia(document.frm.ciudad)">
<option value="Mex">Mexico</option>
<option value="Esp">España</option>
<option value="Ven">Venezuela</option>
</select>
</td>
<td>
</td>
<td>
Ciudad
</td>
<td>
<select name="ciudad">
<option value="0">Ciudad de México</option>
<option value="1">Monterrey</option>
<option value="2">Guadalajara</option>
</select>
</td>
</tr>
</table>
</form>
</body>
</html>