Consulta JavaScript

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • Yoshua
    explorando..
    • 08-10-2004
    • 334

    #1

    Consulta JavaScript

    gueno, lo mando ene ste subforo porque no encuetro otro sitio donde ponerlo =S
    la pregunta es simple y concreta, aunke creo que la respuesta va a ser larga...

    necesito que cuando una personas selecciona una opcion de una lista (ej: selecciona Capital Federal), se le aparezca al lado o se actaulize la lista de al lado con otros datos(ej: barrios de capital federal).
    es decir,condicionar la aparicion o actualizacion de la lista(select) B dependeindo del valor dentro de la lista(select) A.

    o sea, en realidad son mas las dudas, pero momentaneamente necesito solucionar eso.
    el vinculo con la base de datos puedo llegar a hacerlo, pero eso no c me ocurre cómo =S

    me dijeron que tenia que crear una función y un objeto y a eses objeto definirle un array.
    salu2, grax por adelantado
  • MoaLaiSkirulais
    ^^(V)^^
    • 08-07-2003
    • 23268

    #2
    podes hacer algo asi (no esta 100% normalizado)

    Código PHP:
    
    //clase item barrio
    function clsBarrio(keIdBarrio,keNombreBarrio, keIdCiudad)
    {                  
        this.idBarrio = keIdBarrio
        this.nombreBarrio = keNombreBarrio
        this.keIdCiudad= keIdCiudad
        
    }
    
    //ejemplo de llenado 
    var colBarrios = new Array();
    colBarrios[0]=new clsBarrio('idBarrio1','nombreBarrio1','idCiudad1');
    colBarrios[0]=new clsBarrio('idBarrio2','nombreBarrio2','idCiudad1');
    colBarrios[0]=new clsBarrio('idBarrio3','nombreBarrio3','idCiudad1');
    colBarrios[0]=new clsBarrio('idBarrio6','nombreBarrio6','idCiudad2');
    colBarrios[0]=new clsBarrio('idBarrio7','nombreBarrio7','idCiudad2');
    colBarrios[0]=new clsBarrio('idBarrio8','nombreBarrio8','idCiudad2');
    colBarrios[0]=new clsBarrio('idBarrio9','nombreBarrio9','idCiudad2');
    
    function updateComboBarrios(keIdCiudad, punteroComboBarrios) 
    {
    
        //blankea combo
        for (k=1;k<punteroComboBarrios.options.length;k=k){    
            punteroComboBarrios.options[k]=null;
            }
    
        //yena combo
        for(k=0;k<colBarrios.length;k++)
            if(colBarrios[k].idCiudad==keIdCiudad)
                {
                var oOption=document.createElement("OPTION");
                oOption.text=colBarrios[k].nombreBarrio ;
                oOption.value=colBarrios[k].idBarrio;        
                punteroComboBarrios.options.add(oOption)        
                }
    } 
    

    Comentario

    • MoaLaiSkirulais
      ^^(V)^^
      • 08-07-2003
      • 23268

      #3
      faltaba la parte html :S

      Código PHP:
      <select id="idCiudad" name="comboCiudades"
          onChange="updateComboBarrios(self.value,window.document.all['comboBarrios'])">  
          <!-->creo q con self andaria<-->
          <option value="idCiudad1" >nombreCiudad1</option>
          <option value="idCiudad2" >nombreCiudad2</option>
          <option value="idCiudad3" >nombreCiudad3</option>
      </select> 
      

      Comentario

      Trabajando...