Hola Derkenuke!!!!!!!
Disculpa x tardar tanto en responder. Estaba probando tu código e intentando hacer cambios pero no he conseguido hacer q funcione. Esto es lo q tenía antes d cambiarlo y hacer "chapuzas" como las q nombras
Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" lang="es">
<head>
<meta http-equiv="Content-type" content="text/html;charset=iso-8859-1" />
<meta name="Author" content="derkeNuke" />
<title>Página nueva</title>
<style type="text/css">
</style>
</head>
<body>
<form action="nuevo_combobox.html" method="GET" name="frm" onsubmit="muestraElOculto()">
<select name="loc" onchange="cambiar(this.form.zona)">
<option>Cualquier ubicación</option>
<option>Agaete</option>
<option>Agüimes</option>
</select>
<select name="zona" style="visibility: hidden;">
</select>
<label>
<input name="Submit" type="submit" value="Enviar" />
</label>
</form>
<script type="text/javascript">
<!--
function addOpt(oCntrl, iPos, sTxt, sVal){
var selOpcion=new Option(sTxt, sVal);
eval(oCntrl.options[iPos]=selOpcion);
}
function cambiar(oCntrl){
while (oCntrl.length) oCntrl.remove(0);
oCntrl.style.visibility="visible";
switch (document.frm.loc.selectedIndex){
case 0:
oCntrl.style.visibility="hidden";
break;
case 1:
addOpt(oCntrl, 0, "Cualquier ubicación", "%%");
addOpt(oCntrl, 1, "Puerto de las Nieves", "(Puerto de Las Nieves)");
addOpt(oCntrl, 2, "Valle de Agaete", "(Valle de Agaete)");
break;
case 2:
addOpt(oCntrl, 0, "Cualquier ubicación", "%%");
addOpt(oCntrl, 1, "Villa de Agüimes", "(Villa de Agüimes)");
addOpt(oCntrl, 2, "Cruce de Arinaga", "(Cruce de Arinaga)");
addOpt(oCntrl, 3, "Playa de Arinaga", "(Playa de Arinaga)");
addOpt(oCntrl, 4, "Polígono industrial de Arinaga", "(Polígono industrial de Arinaga)");
break;
}
}
// -->
</script>
<script type="text/javascript">
<!--
function muestraElOculto() {
var comoEstaba = document.frm.zona.style.visibility;
document.forms["frm"].zona.style.visibility = "visible";
setTimeout("document.frm.zona.style.visibility='"+comoEstaba+"'", 100);
}
// -->
</script>
</body>
</html>
No dudo d q tú lo hayas hecho, pero yo la verdad es q yo no consigo hacer q muestre el campo "zona" en la URL cuando está oculto.
Respecto a tus dos preguntas, la verdad es q repetí la función "muestraeloculto()" xq no conseguía hacer q con "onsubmit" lo enviase. Y lo repetí con "onclick".
Pero está visto q no causa ningún efecto, al menos en el internet explorer...
D verdad, no t preocupes más x este asunto. Aunque la solución sea extremadamente "cutre", he conseguido hacer q funcione pero no mostrándolo: o sea, poniendo dos juegos d registros, uno para cuando lo muestra y otro para cuando no. Lo malo es q se complica xq en realidad hay otro campo con categorías "cat" a las q corresponden unas subcategorías "sub" y pasa tres cuartos d lo mismo; lo q m obliga a poner no 2 sino 4 juegos d registros
Por todo ello t estoy inmensamente agradecido. Tu código m ha servido para q al menos no muestre el campo, algo q yo no habría podido conseguir. Lo d pasar el valor la verdad es q sigo sin lograrlo, pero t repito q con 4 juegos d registros a la vez

se soluciona...
Si pudieras postear tu ejemplo sería una maravilla aunque tuviese q modificar las páginas ya hechas con mi cutre sistema. Aunque d veras, no t molestes más, no quiero abusar d tu admirable paciencia

Si ya lo tienes hecho podrías postearlo, si no, d verdad q no t molestes. Ya has hecho muchísimo más d lo q esperaba cuando posteé este tema.
¡¡Una vez más, muchísimas gracias!! ¡Un saludo

!!!!