Gracias por tu respuesta elmaspicudo!
Lo que apsa que sigue sin irme!!! no sé, quizás le esté dando tantas vueltas a la tontería ésta que la solución escapa de mis ojos!! aunque sea tan evidente!! jaja
A ver en un principio puse tu código donde tengo el otro, en php, donde añado en el select provincias las provincias... luego epnsando... será en el javascript? porque claro si creo un array... (aunque intenté pasarle por el método cambiar el vector que supuestamente se crea, pero nanai... los '2chos' no me muestran nada, si los pongo fuera me muestra algo raro xD
Total un lio jaja, A ver si me puedes echar otro cablecitooo, mira, suponiendo que el código php lo meta donde te dije la 1º vez... te lo pego a ver qué puede estar mal.. y luego de nuevo el codigo js, donde verás que en teoría le paso el vector que creo en php, porque... se peude hacer no? pasarle a js un vector que creé en php...
P.D: Lo de que no es muy práctico a qué te referías? a tener el js en el mismo archivo? si es así lo sé, ya lo cambiaré pero cuando me funcione, es por trabajar más "cómodo" xD
Código PHP:
<b>Provincia:*</b>
<select name ="provincias" onchange="cambiar(this.form, <?php $vector ?>)">
<?php
$res = provincias($con);
$provincia = 0;
for ($i = 0; $i <pg_num_rows($res); $i++) {
$fila = pg_fetch_array($res, $i);
$provincia = $fila['provincia'];?>
<option value = "<?php $provincia ?>"><?php echo "$provincia"; ?> </option>
<?php
echo "provincias[$i] = new Array();";
$res2 = municipios ($con, $provincia);
$arr="Array(";
for ($j = 0; $j <pg_num_rows($res2); $j++) {
$fila2 = pg_fetch_array($res2, $j);
$municipio = $fila2['municipio'];
$arr2= "'".$municipio."',";
}
$arr2 = substr ($arr2, 0, strlen($arr2) - 1);
echo $arr.$arr2.");";
$vector = $arr.$arr2;
}
?>
</select>
<b>Localidad:*</b>
<select name ="municipios">
<option> </option>
</select>
Código Javascript
:
Ver original<script languaje="JavaScript">
<!--
//provincias = new Array();
//provincias[0] = new Array();
//provincias[1] = new Array('Almería','Cádiz','Córdoba','Granada','Huelva','Jaén','Málaga','Sevilla');
//provincias[2] = new Array('Huesca','Teruel','Zaragoza');
//provincias[3] = new Array('Asturias');
//provincias[4] = new Array('Baleares');
function cambiar(formulario, vector2[]){
var i = 0;
var select1 = formulario['provincias'];
var select2 = formulario['municipios'];
var vector = vector2[select1.selectedIndex];
if(vector.length)select2.length=vector.length;
while(vector[i]){
select2.options[i].value = vector[i];
select2.options[i].text = vector[i];
i++;
}
select2.options[0].selected = 1;
}
</script>