Foros del Web » Programando para Internet » ASP Clásico »

Listas Desplegables Dependientes

Estas en el tema de Listas Desplegables Dependientes en el foro de ASP Clásico en Foros del Web. Hola, Quiero hacer unos desplegables dependientes donde los valores se carguen a través de los datos almacenados en una base de datos. Pero el problema ...
  #1 (permalink)  
Antiguo 13/11/2009, 07:02
 
Fecha de Ingreso: noviembre-2008
Mensajes: 20
Antigüedad: 16 años, 5 meses
Puntos: 0
Listas Desplegables Dependientes

Hola,

Quiero hacer unos desplegables dependientes donde los valores se carguen a través de los datos almacenados en una base de datos.
Pero el problema lo tengo al integrar asp dentro del javascript.

He probado esto pero me da error, alguna idea alternativa o que me diga en que me equivoco?

<html>

<script type="text/javascript" language="javascript">
<%
sql="select up_id, up_titulo, up_descripcion from intra_upload where up_activo='1' order by up_id"
set rs=server.CreateObject("ADODB.Recordset")
rs.Open sql, conn, 1, 1

response.Write("function agregarOpciones(form)")
response.Write("{")
response.Write(" var selec = form.tipos.options;")
response.Write(" var combo = form.estilo.options;")
response.Write(" var contador =0")
response.Write(" combo.length = null;")

response.Write(" if (selec[0].selected == true)")
response.Write(" {")
response.Write(" var seleccionar = new Option('Esperando selección');")
response.Write(" combo[0] = seleccionar;")
response.Write(" }")

response.Write(" if (selec[1].selected == true)")
response.Write(" {")
do while not rs.eof
response.Write("var " &rs('up_id')& " = new Option('" &rs('up_titulo')& "');")
response.Write("combo[contador] = " &rs('up_ip')& ";")
rs.movenext
response.Write("contador = contador +1;")
loop
response.Write(" }")

response.Write(" if (selec[2].selected == true)")
response.Write(" {")
response.Write(" var academica1 = new Option('Musica del Barroco');")
response.Write(" var academica2 = new Option('Musica del Siglo XX');")
response.Write(" var academica3 = new Option('Música del Romantisismo');")
response.Write(" combo[0] = academica1;")
response.Write(" combo[1] = academica2;")
response.Write(" combo[2] = academica3;")
response.Write(" }")
response.Write("}")
%>
</script>

<body>
<form name="ejemplo2" method="POST" target="_blank" action="">
<select name="tipos" onChange="agregarOpciones(this.form)">
<option value="">[seleccione una opción]</option>
<option value="musicapopular">Manuales</option>
<option value="musicaacademica">Comunicados</option>
</select>

<select name="estilo" onChange="direccion(this.form)">
<option value="">Esperando selección</option>
</select>
<input type="submit" value="Enviar">
</form>
</body>

El error me lo asigna de sintaxis en:

response.Write("var " &rs('up_id')& " = new Option('" &rs('up_titulo')& "');")

Muchas gracias.
  #2 (permalink)  
Antiguo 13/11/2009, 07:39
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 18 años, 3 meses
Puntos: 126
Respuesta: Listas Desplegables Dependientes

Hola

Así creo que no te dará error

response.Write("var " &rs("up_id")& " = new Option("""&rs("up_titulo")& """);")
response.Write("combo[contador] = " &rs("up_ip")& ";")

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #3 (permalink)  
Antiguo 13/11/2009, 07:54
 
Fecha de Ingreso: noviembre-2008
Mensajes: 20
Antigüedad: 16 años, 5 meses
Puntos: 0
Respuesta: Listas Desplegables Dependientes

Genial en parte.

Ahora no me da error el codigo pero no se me ejecuta el javascript :_(
  #4 (permalink)  
Antiguo 13/11/2009, 07:58
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 18 años, 3 meses
Puntos: 126
Respuesta: Listas Desplegables Dependientes

Cita:
Iniciado por tasecito Ver Mensaje
Genial en parte.

Ahora no me da error el codigo pero no se me ejecuta el javascript :_(
Eso es lo que me temía. No se puede integrar tal y como lo estás haciendo. Prueba con AJAX. En este mismo foro hay varios hilos sobre ellos

Edito: 15:04; Para da mas info

Aquí tienes un ejemplo

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />

Última edición por Adler; 13/11/2009 a las 08:04
  #5 (permalink)  
Antiguo 16/11/2009, 02:59
 
Fecha de Ingreso: noviembre-2008
Mensajes: 20
Antigüedad: 16 años, 5 meses
Puntos: 0
Respuesta: Listas Desplegables Dependientes

Gracias!

Lo probaré a ver como va.
  #6 (permalink)  
Antiguo 18/11/2009, 08:50
 
Fecha de Ingreso: octubre-2009
Mensajes: 80
Antigüedad: 15 años, 6 meses
Puntos: 2
Respuesta: Listas Desplegables Dependientes

IdPais=Request.QueryString("IdPais")%>
<Select Name="Pais" onchange="location.href='MismaPag.asp?IdPais=' + this.value + '&Log=<%=Nombre%>' " >
<option value="0">[Elegir]</option>
<%
While Not objRS.EOF

response.write("<option")
if int(IdPais) = objRS("Id_Pais") then
response.write(" Selected")
end if
response.write(" value=" & objRS("Id_Pais") & ">" & objRS("Nombre") & "</option>")
objRS.MoveNext
Wend
oConn.Close
set objRS = nothing
set oConn = nothing %>
</Select>

Este codigo por ser asp te regarga completamente la pagina, por eso puse el "Log=<%=Nombre%>" para poder mantener una variable mientras se recarga la pagina cada vez que enlazas una lista, puedes colocar cuantas listas quieras con este codigo.
Espero te sirva.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:54.