gente una duda!
Como dice el tema...
Yo tengo el sgte codigo que encontré en internet:
<form name="formulario" method="post" action="">
<div align="center">Usa
<input name="paises" type="radio" OnClick="cambiar()" value="1" checked>
España
<input name="paises" type="radio" OnClick="cambiar()" value="2">
<br>
Ciudad
<select name="ciudades">
<option value="1" selected>Miami</option>
<option value="2">New York</option>
<option value="3">Boston</option>
</select>
</div>
</form>
<script language="JavaScript">
function cambiar()
{
if(document.forms.formulario.paises[0].checked) pais1(); // USA
if(document.forms.formulario.paises[1].checked) pais2(); // ESPAÑA
}
function pais1(){
opcion0=new Option("Miami","1","defauldSelected");
opcion1=new Option("New York","2");
opcion2=new Option("Boston","3");
document.forms.formulario.ciudades.options[0]=opcion0;
document.forms.formulario.ciudades.options[1]=opcion1;
document.forms.formulario.ciudades.options[2]=opcion2;
}
function pais2(){
opcion0=new Option("Madrid","1","defauldSelected");
opcion1=new Option("Malaga","2");
opcion2=new Option("Cadiz","3");
document.forms.formulario.ciudades.options[0]=opcion0;
document.forms.formulario.ciudades.options[1]=opcion1;
document.forms.formulario.ciudades.options[2]=opcion2;
}
</script>
y me va chevere funciona!
Pero ahora sucede que me di cuenta que funciona porque son 3 listados y en la 2da opcion tb son 3 listados; sin embargo cuando le agrego 2 opciones más a uno de las opciones, esto ya no funciona bien.
Por ejemplo:
function pais1(){
opcion0=new Option("Miami","1","defauldSelected");
opcion1=new Option("New York","2");
opcion2=new Option("Boston","3");
opcion3=new Option("pollo1","4");
opcion4=new Option("pollo2","5");
document.forms.formulario.ciudades.options[0]=opcion0;
document.forms.formulario.ciudades.options[1]=opcion1;
document.forms.formulario.ciudades.options[2]=opcion2;
document.forms.formulario.ciudades.options[3]=opcion3;
document.forms.formulario.ciudades.options[4]=opcion4;
}
Le he agregado "pollo1" y "pollo2" entonces cuando elija la 2da opcion, va a chancar los 3 primeros elementos de la lista y va a mostrar los 2 ultimos de la lista anterior, y eso es malo!
Me pregunto como haría para poder mostrar solo aquellos que debo mostrar y no las sobras de la antigua lista.
Espero haberme explicado bien.
Saludos