Manejos de combos en cascada

guiceballos
10 de Septiembre del 2005
Amigos, tengo un problema para obtener lo seleccionado en un combo y dependiendo de ese valor me aparezcan las opcionesque corresponden en otro combo. Si yo cambio el combo principal debe cambiar las opciones del combo secundario.
Si alguien puede ayudarme seria muy bueno.
Muchas gracias.
Guille

Birkoff
10 de Septiembre del 2005
<!-- En el <HEAD> deberas colocar esto
Elnombre de la pagina debera ser tutorial.php,
esto s un ejemplo que yo uso en una pagina tu lo modificaras a tu antojo-->
<SCRIPT>
function reemplazarGuion(cadena)
{
var re, r, result;
re = /_/i;
r = cadena.replace(re," ");
re = /Espana/i;
result = r.replace(re,"Espa\xf1a");
return(result);
}

function actCombos() {
var p2;
p = document.frmConsulta.titulo[document.frmConsulta.titulo.selectedIndex].value;
p2 = reemplazarGuion(document.frmConsulta.titulo[document.frmConsulta.titulo.selectedIndex].value);
document.frmConsulta.titulo[document.frmConsulta.titulo.selectedIndex].value = p2;

var titulo_=new Array("");
var descrip_=new Array("");

<!-- TITULO I - CAPITULOS -->
var titulo_1=new Array("1","2","3","4","5","6");
var descrip_1=new Array("Art. 1","Art. 2", "Art. 3", "Art. 4", "Art. 5", "Art. 6");

<!-- TITULO 2 - CAPITULOS -->
var titulo_2=new Array("1","2","3","4","5","6","7","8");
var descrip_2=new Array("Del Consejo General Nacional","De la Junta Directiva nacional","Del Consejo Coordinador Nacional",
"De la Presidencia de la Junta Directiva Nacional","De la Vice-Presidencia de la Junta Directiva Nacional",
"Del Gerente General", "Del Tesorero", "De la Contraloria Interna");

<!-- TITULO 3 - CAPITULOS -->
var titulo_3=new Array("1","2","3","4","5","6","7");
var descrip_3=new Array("Art. 28","Art. 29", "Art. 30", "Art. 31", "Art. 32", "Art. 33", "Art. 34", "Art. 35");

<!-- TITULO 4 - CAPITULOS -->
var titulo_4=new Array("1","2","3","4");
var descrip__4=new Array("Art. 36","Art. 37", "Art. 38", "Art. 39");

<!-- TITULO 5 - CAPITULOS -->
var titulo_5=new Array("1");
var descrip_5=new Array("Art. 40");

<!-- TITULO 6 - CAPITULOS -->
var titulo_6=new Array("1","2","3");
var descrip_6=new Array("Art. 41","Art. 42", "Art. 43");

<!-- TituloSTATE-ARRAYS -->
sel_titulo=eval("titulo_"+p);
sel_descrip=eval("descrip_"+p);
cuantos_add=sel_titulo.length;
document.frmConsulta.capitulos.length=cuantos_add;

for(i=0;i<cuantos_add;i++){
document.frmConsulta.capitulos.options[i].value=sel_titulo[i];
document.frmConsulta.capitulos.options[i].text=sel_descrip[i];
if (sel_titulo[i]=="") {
document.frmConsulta.capitulos.options[i].selected = true;
}
}
}

function popVentana(theURL,winName,features)
{
window.open(theURL,winName,features);
}

function chequeo(formu) {
if (document.frmConsulta.categcount.value<1) {
alert ("Por favor, seleccione al menos 1 categoria.")
return false;
}
if (!formu.Titulo.value)
{
alert ("Por favor, introduzca su Pais.")
return false;
}
return true;
}
</SCRIPT>

<!-- luego en la seccion del form-->
<FORM name="frmConsulta" method="GET" action="tutorial.php">
<SELECT name="titulo" size="1" class=cajas id="titulo" onchange=\'javascript:actCombos()\';>
<OPTION value="0" >Seleccione el Título</OPTION>
<OPTION value="Disposiciones Generales">Disposiciones Generales</OPTION>
<OPTION value="2">Órganos de Dirección Y Administración Nacional</OPTION>
<OPTION value="3">De las Fundaciones del Niño Estatales y Municipales</OPTION>
<OPTION value="4">Del Ejercicio Económico y la Auditoria Externa</OPTION>
<OPTION value="5">De la Reforma de 105 Estatutos</OPTION>
<OPTION value="6">Disposiciones Finales</OPTION>
</SELECT>
<SELECT name="capitulos" id="capitulos">
<OPTION value="0">Seleccione el Capítulo</OPTION>
</SELECT>
<INPUT name="enviar" type="submit" class="boton" id="enviar" style="cursor:hand " value="Enviar" >

</FORM>