Ver Mensaje Individual
  #6 (permalink)  
Antiguo 20/03/2003, 17:07
Avatar de Kaopectate
Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 10 meses
Puntos: 38
Hola de nuevo Mauro.

Fíjate en este ejemplo:

Código PHP:
<html>
 <
head>
  <
script language="JavaScript">
   
// Lista de paises, lo que tienes que hacer es recorrer tu lista de paises y 
   // generar una línea por cada uno de ellos para que quede igual que en este 
   // modelo, es decir, ponle a cada uno de ellos una clave y luego un nombre.
   
var aPaises = new Array(
                            new Array(
"   ""...Seleccione un país"   ),
                            new Array(
"Mex""Mexico"                  ),
                            new Array(
"Esp""España"                  ),
                            new Array(
"Ven""Venezuela"               )
                          );
   
// Lista de ciudades, acá lo que tienes que hacer es recorrer tu lista de ciudades y 
   // colocar en cada línea la clave del país al que corresponde, luego el nombre de la
   // ciudad y por último una clave de esa ciudad (la que tu quieras).
   
var aCiudades = new Array(
                            new Array(
"   ""...Seleccione una ciudad""0"),
                            new Array(
"Mex""Ciudad de México",         "0"),
                            new Array(
"Mex""Monterrey",                "1"),
                            new Array(
"Mex""Guadalajara",              "2"),
                            new Array(
"Esp""Madrid",                   "0"),
                            new Array(
"Esp""Barcelona",                "1"),
                            new Array(
"Esp""San Sebastián",            "2"),
                            new Array(
"Ven""Caracas",                  "0"),
                            new Array(
"Ven""Maracay",                  "1"),
                            new Array(
"Ven""Valencia",                 "2")
                          );


   function 
addOpt(oCntrliPossTxtsVal){
     var 
selOpcion=new Option(sTxtsVal);
     eval(
oCntrl.options[iPos]=selOpcion);
   }

   function 
cambia(oCntrl){
    var 
0;
    var 
nPais document.frm.pais.selectedIndex;
    for (var 
0aCiudades.lengthi++)
     if ((
aCiudades[i][0] == "   ") || (aCiudades[i][0] == aPaises[nPais][0]))
      
addOpt(oCntrl,  j++, aCiudades[i][1], aCiudades[i][2]);
   }
  
</script>
 </head>
 <body>
  <form name="frm">
   <table border="0">
    <tr>
     <td>
      Pais
     </td>
     <td>
      <select name="pais" onchange="cambia(document.frm.ciudad)">
       <script language="JavaScript">
        for (var i = 0; i < aPaises.length; i++)
         document.write("<option value='" + aPaises[i][0] + "'>" + aPaises[i][1] + "</option>");
        cambia(document.frm.ciudad);
       </script>
      </select>
     </td>
     <td>
      &nbsp;
     </td>
     <td>
      Ciudad
     </td>
     <td>
      <select name="ciudad">
       <option>...Seleccione una ciudad</option>
      </select>
     </td>
    </tr>
   </table>
  </form>
 </body>
</html> 
Lo que tienes que hacer es generar en base a tus datos desde PHP solo las líneas donde dice new Array, el resto es código genérico que va a responder a lo que se coloque en esos arreglos.

Trata de dejar la primera línea de ambos arreglos como está, es decir la de "seleccione..." ya que el algoritmo tiene en cuenta a dicha línea.

No se si sabrás hacer por ti mismo la parte de PHP, si no es asi, respóndeme aqui mismo y movemos este hilo a ese foro para que te terminen de ayudar.

Saludos.