Foros del Web » Programando para Internet » Javascript »

Asp dentro de javascript

Estas en el tema de Asp dentro de javascript en el foro de Javascript en Foros del Web. Tengo un formulario donde se le pide al usuario que seleccione su pais que esta dentro de un combo y tambien se le pide su ...
  #1 (permalink)  
Antiguo 11/05/2005, 08:00
Avatar de silvia1977  
Fecha de Ingreso: abril-2005
Mensajes: 54
Antigüedad: 19 años
Puntos: 0
Asp dentro de javascript

Tengo un formulario donde se le pide al usuario que seleccione su pais que esta dentro de un combo y tambien se le pide su ciudad, que en principio esta deshabilitada hasta que el usuario selecciona algun pais. Pues bien lo que quiero hacer es que cuando el usuario selecciona un pais se carge automaticamente las ciudades de ese pais en el segundo combo.

Para ello me baso en este ejemplo que he encontrado:

<script language="javascript">
function agregarOpciones(form)
{
var selec = form.tipos.options;
var combo = form.estilo.options;
combo.length = null;

if (selec[0].selected == true)
{
var seleccionar = new Option("<-- esperando selección","","","");
combo[0] = seleccionar;
}

if (selec[1].selected == true)
{
var popular1 = new Option("Rock de los 90","Rock1","","");
var popular2 = new Option("Rock de los 80","Rock2","","");
combo[0] = popular1;
combo[1] = popular2;
}

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


El formulario...


<form name="ejemplo2" method="POST" target="_blank" action="pagina.htm">
<select name="tipos" onChange="agregarOpciones(this.form)">
<option value="">[seleccione una opción]</option>
<option value="musicapopular">Música Popular (Rock)</option>
<option value="musicaacademica">Música Académica</option>
</select>

<select name="estilo">
<option value=""><-- esperando selección</option>
</select>

<input type="submit" value="Enviar"></form>


Pero claro yo he de generar los options dinamicamente consultando a la base de datos. Lo hago asi:

if (selec[1].selected == true)
{
<% set rscity = con.execute("select * from city")
i=0
%>

<% while not rscity.EOF %>
var city<%=i%> = new Option("<%= rscity("city") %>");
combo[<%=i%>] = "<%= rscity("id_city") %>";
<% i=i+1
rscity.MoveNext
wend
rscity.Close
set rscity = nothing
%>
}

Pues esto ya no me lo hace en mi pagina. Cuando el usuario selecciona el pais 1 (que se lo dijo asi: selec[1].selected == true ) despues no me lista todos los paises en el otro combo, como si no creara estas opciones dinamicamente... PERO ES MAS yo necesito en realidad consultar las ciudades del pais seleccionado y ahi estoy listando todas las ciudades, la consulta deberia ser:

<% set rscity = con.execute("select * from city where id_country=VALOR PAIS") %>

Donde VALOR PAIS es lo tengo almacenado aqui: form.country[0].value , o sea, en javascript!! y no se como poner es valor en javascript dentro de esa consulta, creo que no se podra, no???

A ver si me podeis ayudar, por favor. Si no se pudiera hacer en javascript decirme como puedo hacer esto en asp.

Gracias de antemano.

Por favor contestar!!!!!!!!!!
__________________
Silvia - Castellón :arriba:
  #2 (permalink)  
Antiguo 11/05/2005, 10:43
Avatar de moNTeZIon  
Fecha de Ingreso: enero-2005
Ubicación: Lliçà de Munt - BCN
Mensajes: 1.625
Antigüedad: 19 años, 4 meses
Puntos: 9
Mi duda es... Te ejecuta el código correctamente?
Hasta donde yo se, para poder ejecutar ese código ASP que contienen las funciones JavaScript, ha de ser en el servidor... el cliente no ejecuta ASP, con lo que al seleccionar un Pais, deberías mandar la página al servidor, recoger las ciudades de ese país con ASP, consultando la BD, y a la vuelta, cargar el combo de las ciudades.
__________________
..:: moNTeZIon ::..
  #3 (permalink)  
Antiguo 12/05/2005, 01:20
Avatar de silvia1977  
Fecha de Ingreso: abril-2005
Mensajes: 54
Antigüedad: 19 años
Puntos: 0
Pues el codigo no me funciona.

Me podrias ayudar con el codigo o decirme alguna pagina donde este hecho?

Gracias
__________________
Silvia - Castellón :arriba:
  #4 (permalink)  
Antiguo 13/05/2005, 04:42
Avatar de moNTeZIon  
Fecha de Ingreso: enero-2005
Ubicación: Lliçà de Munt - BCN
Mensajes: 1.625
Antigüedad: 19 años, 4 meses
Puntos: 9
Puedes hacer, por ejemplo, que cuando el usuario seleccione un país en el combo de paises, mandar el Form (SUBMIT). Con ASP, arriba del todo de la página, recoges ese valor, y consultas la BD y te cargas un recordset con las ciudades de ese pais. Luego, sólo tienes que llenar el combo de las ciudades con ese recordset...

No te parece? No se si requieres alguna otra funcionalidad en tu formulario, pero si no, es tan sencillo como esto...

Suerte!
__________________
..:: moNTeZIon ::..
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 15:19.