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

guadar variables de 2 select dependientes

Estas en el tema de guadar variables de 2 select dependientes en el foro de ASP Clásico en Foros del Web. Hola Aca tengo el codigo para crear un select que depende de otro, lo que necesito es que se llene un tercer campo sin que ...
  #1 (permalink)  
Antiguo 23/08/2005, 16:02
 
Fecha de Ingreso: agosto-2005
Mensajes: 10
Antigüedad: 18 años, 9 meses
Puntos: 0
guadar variables de 2 select dependientes

Hola
Aca tengo el codigo para crear un select que depende de otro, lo que necesito es que se llene un tercer campo sin que se borre el valor del primer select.
Me explico. A hacer click sobre el primer select se recarga la misma pagina, y el valor del primer select queda guardado dentro de este. pero cuando se hace click sobre el segundo select se recarga nuevamente la pagina, pero el valor del primer select desaparace...he hay el problema, no quiero perder el valor que esta inserto en el primer select, quiero que se conserve en el mismo.

desde ya muxas gracias
aca dejo el codigo por cualquier opinion

primer select

<select name=cbcondominio onChange="location.href('i_reserva.asp?var_condomi nio=' + Form_reserva.cbcondominio.value)">
<option value="<%=Request.Querystring("var_condominio")%>" ><%=Request.Querystring("var_condominio")%></option>
<%
set Rsp=Con.execute("select NO_CONDOMINIO from CONDOMINIO order by NO_CONDOMINIO asc")

While NOT Rsp.EOF %>
<option value="<%=Rsp("NO_CONDOMINIO")%>"><%=Rsp("NO_CONDO MINIO")%></option>
<% Rsp.movenext
Wend
Rsp.close
%>
</select>

Segundo select

<select name=cbnumero onChange="location.href('i_reserva.asp?var_casa=' + Form_reserva.cbnumero.value)">
<option value="<%=Request.Querystring("var_casa")%>"><%=Re quest.Querystring("var_casa")%></option>
<% set Rsp=Con.execute ("select NU_CASA, COD_CASA from CASA where no_condominio= '" & request.Querystring("var_condominio") & "' order by NU_CASA asc")
while not Rsp.eof %>
<option value="<%=Rsp("COD_CASA")%>"><%=Rsp("NU_CASA")%></option>
<% Rsp.movenext
wend
Rsp.close

%>
</select>
  #2 (permalink)  
Antiguo 23/08/2005, 17:27
Avatar de macedo  
Fecha de Ingreso: enero-2002
Ubicación: Madrid
Mensajes: 124
Antigüedad: 22 años, 4 meses
Puntos: 0
Hola fcampos.

Mira a ver si te vale esto:

<select name=cbcondominio onChange="location.href('i_reserva.asp?var_condomi nio=' + Form_reserva.cbcondominio.value)">
<%
set Rsp=Con.execute("select NO_CONDOMINIO from CONDOMINIO order by NO_CONDOMINIO asc")
Opcion_Seleccionada=Request.Querystring("var_condo minio")
While NOT Rsp.EOF %>
if Rsp("NO_CONDOMINIO")=Opcion_Seleccionada then Seleccionado="selected" else Seleccionado=""
<option value="<%=Rsp("NO_CONDOMINIO")%>" <%=Seleccionado%>><%=Rsp("NO_CONDOMINIO")%></option>
<% Rsp.movenext
Wend
Rsp.close
%>
</select>

Lo que hace es que según va metiendo los resultados del query los compara con el valor que has enviado por get con el evento onchage y cuando coincide pone selected en el option.

De todos modos, tal y como lo tenías parece que debería funcionar.
¿Estas seguro que está pasando el valor del campo? Mira la URL cuando re refresque la página.

Espero que te sirva.

Saludos.
__________________
"Hay que simplificar las cosas tanto como sea posible, pero no más".
Albert Einstein.
  #3 (permalink)  
Antiguo 23/08/2005, 18:10
 
Fecha de Ingreso: agosto-2005
Mensajes: 10
Antigüedad: 18 años, 9 meses
Puntos: 0
gracias por tu respuesta
si funciona pero no como lo que quiero...

lo que debe hacer es:
elegir condominio, este gatilla a abrir select cbnumero, y por ese momento el select cbcondominio retiene su valor.
luego debo elegir del select cbnumero que casa quiero, al hacer click hay recupero la casa en cbnumero pero pierdo condominio en cbcondominio.
necesito esa conbinacion para pedir una consuta sql que incluye los 2 select, pero a esa altura el cbcondominio esta vacio.
como puedo reguardar el valor del condominio.
  #4 (permalink)  
Antiguo 23/08/2005, 18:21
Avatar de macedo  
Fecha de Ingreso: enero-2002
Ubicación: Madrid
Mensajes: 124
Antigüedad: 22 años, 4 meses
Puntos: 0
Hola de nuevo.

El problema es que estás enviando la información con location.href.

Lo que deberías hacer si quieres que al cambiar el segundo select se envien los dos datos es poner en el evento Form_reserva.submit() en ves del location.href.

De este modo te envia todos los campos del formulario.
Tambien podrías añadir al location.href el valor del primer select como haces arriba, pero creo que es mejor con el submit.

Ojo. Si estas usando Request.Querystring en el method del form tienes que usar get.

Saludos.
__________________
"Hay que simplificar las cosas tanto como sea posible, pero no más".
Albert Einstein.
  #5 (permalink)  
Antiguo 23/08/2005, 18:23
 
Fecha de Ingreso: agosto-2005
Mensajes: 10
Antigüedad: 18 años, 9 meses
Puntos: 0
Excelente Macedo

Vuelve A Guardar La Variable, Muxas Gracias, Lo Unico Es Que No Guarda La Que Se Selecciono, Pero Veré Que Puedo Hacer. Ahora Si Sabes...jijiji

Saludos Y Gracias
  #6 (permalink)  
Antiguo 23/08/2005, 18:35
 
Fecha de Ingreso: agosto-2005
Mensajes: 10
Antigüedad: 18 años, 9 meses
Puntos: 0
oTRA COSA
DONDE COLOCO?
evento Form_reserva.submit() en ves del location.href.
  #7 (permalink)  
Antiguo 23/08/2005, 19:01
Avatar de macedo  
Fecha de Ingreso: enero-2002
Ubicación: Madrid
Mensajes: 124
Antigüedad: 22 años, 4 meses
Puntos: 0
Cambia

onChange="location.href('i_reserva.asp?var_casa=' + Form_reserva.cbnumero.value)

Por

onChange="Form_reserva.submit()"

Pero aseguraté de que tienes puesto el action del form porque hasta ahora no lo estabas usando pero si haces un submit tiene que saber hacia donde lo tiene que hacer

En este caso sería <form ...loquesae... action="'i_reserva.asp" method="get">

Saludos
__________________
"Hay que simplificar las cosas tanto como sea posible, pero no más".
Albert Einstein.
  #8 (permalink)  
Antiguo 23/08/2005, 19:55
 
Fecha de Ingreso: agosto-2005
Mensajes: 10
Antigüedad: 18 años, 9 meses
Puntos: 0
eso lo tenia, solo que no lo habia desplegado en el foro. =)
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 20:43.