cargar listas desplegables

epeh
30 de Septiembre del 2004
hola! haber si alguien me puede ayudar..
tengo dos listas desplegables en una pagina y no se como hacer para ke cuando pinche en el campo de una se carge la otra con otros datos.. si alguien tiene parte del codigo lo agradeceria..

gracias desde ya ;)

prietoroyo
30 de Septiembre del 2004
<% 'Hola Epeh, soy Jósé Mª y estoy desarrollando un proyecto de web en ASP que es una tienda virtual de coches, el mismo problema que tu tienes encontre solucion en este foro parece ser que tienes dos listas de select con varias opciones y quieres que te cargue la lista primera y al hacer una seleccion de dato te cargue los registros relacionados en la otra lista, el ejemplo que te pongo aqui es una lista de Marcas la primera y una segunta de Modelos cuando carga el form se carga la primera lista de marcas y cuando haces una seleccion sobre la primera lista te carga en la otra los modelos relacionados el canvio debes controlarlo en JavaScript ya que se ejecuta en la parte cliente y el evento es onChange te pongo aquí todo el codigo de mi pagina proyecto y miratelo no es muy complicado%>
<tdwidth="169"height="67"><divalign="center"><fontface="Arial, Helvetica, sans-serif" size="2" color="#333333">Seleccione una Marca</font></div></td>
<td width="70" height="67"> <div align="center">
<select name="Marcas" onChange="location.replace(location.href+'?IDMarca='+this.options[this.options.selectedIndex].value);">
<option selected class="Escoge" >Escoge *</option>
<%
set objConnection = Server.CreateObject("ADODB.Connection")
strConn = "Provider=SQLOLEDB; DATA SOURCE=OPTICALFLASH; INITIAL CATALOG=directcar; user id=Txema; Password=amor"
Set rs= Server.CreateObject("ADODB.RecordSet")
objConnection.Open strConn
strSQL= "SELECT * FROM TablaMarcas ORDER BY NombreMarca"
Set rs = objConnection.Execute(strSQL)
Do Until rs.EOF
%>
<option value="<%=rs("IDMarca")%>"<% If Request.QueryString("IDMarca") = Cstr(rs("IDMarca")) Then%>selected<%End If%>><%=rs("NombreMarca")%></option>
<%
rs.MoveNext
Loop
rs.Close
Set rs=Nothing
set objConnection = nothing
Response.ExpiresAbsolute=Now
%>
</select>
</div></td>
<td width="166" height="67"> <div align="center"><font face="Arial, Helvetica, sans-serif" size="2" color="#333333">&nbsp;Seleccione
un Modelo </font></div></td>
<td width="82" height="67"> <div align="center">
<select name="Modelo">
<%
set objConnection = Server.CreateObject("ADODB.Connection")
strConn = "Provider=SQLOLEDB; DATA SOURCE=OPTICALFLASH; INITIAL CATALOG=directcar; user id=Txema; Password=amor"
Set rs2= Server.CreateObject("ADODB.RecordSet")
objConnection.Open strConn
IDMarca=Request.QueryString("IDMarca")
strSQL2= "SELECT * From TablaModelos WHERE TablaModelos.IDMarcas ='" & IDMarca & "'" & " ORDER BY NombreModelo"
Set rs2 = objConnection.Execute(strSQL2)
Do Until rs2.EOF
%>
<option value="<%= rs2("IDModelos")%>"><%=rs2("NombreModelo")%></option>
<%
rs2.MoveNext
Loop
rs2.Close
Set rs2=Nothing
set objConnection = nothing Response.ExpiresAbsolute=Now
%>
</select></div></td>

maxine
30 de Septiembre del 2004
esto repinta la página, ¿verdad?... lo suyo sería sin el efecto ese del refresco en pantalla