Ver Mensaje Individual
  #1 (permalink)  
Antiguo 20/09/2007, 07:58
Fall
 
Fecha de Ingreso: septiembre-2007
Mensajes: 7
Antigüedad: 17 años, 7 meses
Puntos: 0
Problema con menu dinamico

He tenido algunos problema con un menu que estoy editando, lleva javascrip y asp mi problema es que no puedo distigir bien las variables para asignarle una flag o swich ; y asi ponerle una accion determinada...

El desarrollo esta en www.demco.cl/default.asp

El menu al hacer click en el, quedara en verde como activo (segun la seccion en la cual se hace click) ademas mi otro problema es que la pagina se refresca y vuelve a la normalidad.

Por que no puedo hacerlo? por que tengo un codigo el cual cada vez que el mouse esta en over se pone gris claro y cuando esta out se pone al gris normal.

el codigo es el siguente:

Código:
function clearfield(){
if (document.form3.keyword.value == "search this site")
	document.form3.keyword.value = "";
}
//  End -->
function submenu(cual){
if (document.getElementById(cual).style.display=='none'){
document.getElementById(cual).style.display="";}

else{
document.getElementById(cual).style.display='none';
}
}
En esta rutina de codigo, se declaro una funcion, donde obviamente se hace referencia para el menu dinamico, como punto a parte el sistema completo se hizo con VP ASP sofware de carro de compras y el cual he editado en parte.

Código:
% 
dim cid, name,catSQL,i
dim strcategory, catcount, categories,maxcategories
Dim catdbc,catrs, hassubcategory,mylink

ShopOpenDatabaseP catdbc 
catSQL="Select * from categories where highercategoryid=0 and cathide is null order by catdescription asc"
set catrs=catdbc.execute(catsql)
						
While Not catrs.EOF 

if (catrs("hassubcategory")="yes") then
						
cid=catrs("categoryid")
							
							
response.write("<tr onMouseOver=""this.style.color='#949494';this.style.cursor='hand';"" onMouseOut=""this.style.color='#666666';"" 
onclick=""submenu('"& catrs("categoryid")&"'); this.style.color='#FF0000'; ""><td height='20' background='fondo-menu.jpg' >
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"& catrs("catdescription")&"</td></tr><tr><td><table width='100%'  border='0' cellspacing='0' 
cellpadding='0' id='" & catrs("categoryid") & "' style='display:none'>") 
							
					
catSQL="Select * from categories where highercategoryid="& catrs("categoryid")&" and cathide is null "

set hassubcategory=catdbc.execute(catsql)

While Not hassubcategory.EOF 
cid=hassubcategory("categoryid")
						
response.write("<tr onMouseOver=""this.style.color='#949494';this.style.cursor='hand';"" onMouseOut=""this.style.color='#666666';""
onclick=""window.open('shopdisplayproducts.asp?id=" & cid & "&amp;cat=" & catrs("catdescription") & "','_self')"" ><td height='20' 
background='fondo-sbmenu.jpg'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"& hassubcategory("catdescription")&" 
</td></tr>") 
							
					
hassubcategory.movenext

wend

response.write("</table>")

else

cid=catrs("categoryid")
						

response.write("<tr onMouseOver=""this.style.color='#949494';this.style.cursor='hand';"" onMouseOut=""this.style.color='#666666';""
onclick=""window.open('shopdisplayproducts.asp?id=" & cid & "&amp;cat=" & catrs("catdescription") & "','_self')"" ><td height='20'
background='fondo-menu.jpg'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"& catrs("catdescription")&"</td></tr>")
						
end if
						
						
catrs.movenext
wend
%
Veamos, se que cuando -- onclick=""submenu('"& catrs("categoryid")&"'); this.style.color='#00FF00'; "" -- llama a la funcion ademas de poner verde al click pero como ademas cuando -- onMouseOver=""this.style.color='#949494';this.styl e.cursor='hand';"" onMouseOut=""this.style.color='#666666';"" -- vuelve a la normalidad, no se como decirle tomando alguna variable que cuando este desglosado el menu ponga por ejemplo "Almacenamiento en verde que contiene las subsecciones CD, DVD. etc

Tambien se -- style='display:none' -- esconde las subsecciones del menu, me he mariado editando el codigo, insertando condiciones, editando la funcion pero estoy obligado a sacarlo del response.write donde esta impusta las condiciones

Muchas gracias si me guian o me aclaran por que la verdad estoy bloqueado, tal vez la solucion es muy simple pero la verdad no la veo