Ciao A tutto il forum

sto facendo un menu a 4 livelli ma succede una cosa strana, il menu è così composto

- foglio di stile
- JavaScript (che riporto sotto)

navHover = function() {
var lis = document.getElementById("navmenu").getElementsByTa gName("LI");
for (var i=0; i<lis.length; i++) {
lis[i].onmouseover=function() {
this.className+=" iehover";
}
lis[i].onmouseout=function() {
this.className=this.className.replace(new RegExp(" iehover\\b"), "");
}
}
}
if (window.attachEvent) window.attachEvent("onload", navHover);


e il codice del menu:

(la tabella Menu è sempre la stessa)

<%
apro tabella menu
%>
<ul id="navmenu">
<%
Do while not Menu.EOF
IDMenu = Menu("IDMenu")
if Menu("IDPadre") = 0 then
%>
[*]<%=Menu("voce")%>

<%
Dim apro, chiudo, IDMenu2
apro tabella menu2 where IDPadre = " & IDMenu
%>
<%
IF Menu2.EOF or Menu2.BOF then
else
apro = false
Do while not Menu2.EOF
IDMenu2 = Menu2("IDMenu")
If apro = false Then
%>
<ul>
<%
apro = true
end if
%>

[*]<%=Menu2("voce")%>
<%
Menu2.movenext
loop
%>

<%
Dim IDMenu3
apro tabella menu3 where IDPadre = " & IDMenu2
%>
<%
IF Menu3.EOF or Menu3.BOF then
else
apro = false
Do while not Menu3.EOF
IDMenu3 = Menu3("IDMenu")
If apro = false Then
%>
<ul>
<%
apro = true
end if
%>

[*]<%=Menu3("voce")%>
<%
Menu3.movenext
loop
%>

<%
apro tabella menu4 where IDPadre = " & IDMenu3
%>
<%
IF Menu4.EOF or Menu4.BOF then
else
apro = false
Do while not Menu4.EOF
If apro = false Then
%>
<ul>
<%
apro = true
end if
%>[*]<%=Menu4("voce")%>
<%
Menu4.movenext
loop
%>[/list]
<%
end if
Menu4.close()
Set Menu4 = nothing
%> [/list]
<%
end if
Menu3.close()
Set Menu3 = nothing
%> [/list]
<%
end if
Menu2.close()
Set Menu2 = nothing
end if
Menu.movenext
loop
%>
[/list]

chiudo menu

succede che pesca i vari sottomenu ...quando ne ha voglia ...quasi a caso