Foros del Web » Programando para Internet » Javascript »

Cambiar combo por un texbox segun otro combo

Estas en el tema de Cambiar combo por un texbox segun otro combo en el foro de Javascript en Foros del Web. Hola tengo un problema y no se que hacer, resulta que tengo un combo con todos los paises que tiene como "selected"=chile, y otro combo ...
  #1 (permalink)  
Antiguo 05/03/2009, 13:53
 
Fecha de Ingreso: marzo-2008
Mensajes: 94
Antigüedad: 16 años, 1 mes
Puntos: 0
Cambiar combo por un texbox segun otro combo

Hola tengo un problema y no se que hacer,
resulta que tengo un combo con todos los paises que tiene como "selected"=chile, y otro combo con todas las cuidades de chile. Pero resulta que el combo de ciudades se crea y llena atravez de una funcion php.
Lo que quiero hacer es que si elijo un pais distinto a chile el combo de ciudades de quede como solo lectura o se cambie por un text donde el usuario especifique su ciudad.
espero que me puedan ayudar

PD: nose si este post va en este foro
  #2 (permalink)  
Antiguo 05/03/2009, 14:32
Avatar de jeybi  
Fecha de Ingreso: julio-2008
Ubicación: Mexico
Mensajes: 130
Antigüedad: 15 años, 9 meses
Puntos: 10
Respuesta: Cambiar combo por un texbox segun otro combo

Usa un codigo como este:

Código javascript:
Ver original
  1. window.onload = function(){
  2.     document.getElementById('pais').onchange = combo;   //Al cargar, asigamos un event handler para onchange al combo con id 'pais'
  3. }
  4.  
  5. function combo(){
  6.     if(this.options[this.selectedIndex].value != 'Chile'){ //Si no hemos seleccionado chile...
  7.         if(!this.form.ciudadPersonzalizada){ //Y si ademas no existe el elemento 'ciudadPersonzalida'...
  8.             this.form.ciudades.disabled = 'disabled';                //Desabilitamos el select ciudades
  9.             this.form.ciudades.style.display = 'none';                //Lo ocultamos
  10.             var textinput = document.createElement('input');        //Creamos un nuevo input
  11.             textinput.type = 'text';                                //que sea de tipo texyt
  12.             textinput.id = 'ciudadPersonzalizada';                    //Le ponemos un id 'ciudadPersonzalida'
  13.             textinput.name = 'ciudadPersonzalizada';                //Le ponemos un nombre 'ciudadPersonzalida'
  14.             this.form.insertBefore(textinput,this.form.ciudades);   //Lo insertamos en el documento, justamente antes de el select ciudades oculto
  15.         }
  16.            
  17.     }
  18.     else if(this.form.ciudadPersonzalizada){    //Si selecionamos chile, y EXISTE el input con nombre 'ciudadPersonzalida'..
  19.         this.form.removeChild(this.form.ciudadPersonzalizada);    //Lo quitamos..
  20.         this.form.ciudades.removeAttribute('disabled');        //Habilitamos el select ciudades
  21.         this.form.ciudades.style.display = 'inline';            //Lo hacemos visible
  22.        
  23.     }
}

Ya tu le cambias el name y agregas texto para especificar cuiando debes seleccionar y cuando debes tipear tu ciudad.

El HTML:

Código html:
Ver original
  1. <form method="post" action="x" name="x">
  2. <select id="pais" name="pais">
  3. <option value="Chile" selected="selected">Chile</option>
  4. <option value="Mexico" >Mexico</option>
  5.  
  6. <select name="ciudades" id="ciudades">
  7. <option value="" selected="selected">Selecciona...</option>
  8. <option value="Santiago">Santiago</option>
  9.  
  10. </form>
  #3 (permalink)  
Antiguo 06/03/2009, 08:46
 
Fecha de Ingreso: marzo-2008
Mensajes: 94
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: Cambiar combo por un texbox segun otro combo

no me funciona, y esta cosa me deja postear mi codigo. nose que hacer
  #4 (permalink)  
Antiguo 06/03/2009, 08:46
 
Fecha de Ingreso: marzo-2008
Mensajes: 94
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: Cambiar combo por un texbox segun otro combo

no me funciona, y esta cosa NO me deja postear mi codigo. nose que hacer
  #5 (permalink)  
Antiguo 06/03/2009, 11:39
Avatar de jeybi  
Fecha de Ingreso: julio-2008
Ubicación: Mexico
Mensajes: 130
Antigüedad: 15 años, 9 meses
Puntos: 10
Respuesta: Cambiar combo por un texbox segun otro combo

Cita:
Iniciado por e_daniel316 Ver Mensaje
no me funciona, y esta cosa NO me deja postear mi codigo. nose que hacer
Nosotros menos, estudia el codigo, no es solo darle copy&paste.
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 07:24.