Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/05/2005, 08:00
Avatar de silvia1977
silvia1977
 
Fecha de Ingreso: abril-2005
Mensajes: 54
Antigüedad: 19 años, 7 meses
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: