Hola
Primero, en vez de usar
select has de usar
value. Segundo el
subindice 4, al menos en el ejemplo que planteas, no existe. Y tercero, y mas importante, siempre te va a devolver o true o false, sea lo que sea que seleccione el usuario
Se me ocurre que podrías hacer algo como esto
Código Javascript
:
Ver original<html>
<head>
<script language="javascript">
function funcion(val) {
var arraydosdim = new Array('Natural','Juridico','Gubernamental');
var arraydosdim2 = new Array();
arraydosdim2[0]=new Array('Natural1','Natural2','Natural3');
arraydosdim2[1]=new Array('Juridico1','Juridico2','Juridico3');
arraydosdim2[2]=new Array('Gubernamental1','Gubernamental2','Gubernamental3');
for(i=0; i < arraydosdim.length; i++) {
if(val == arraydosdim[i]) {
n = i;
}
}
var j = 1;
for(i=0; i < arraydosdim2[n].length; i++) {
var selOpcion=new Option(arraydosdim2[n][i], arraydosdim2[n][i]);
eval(document.form1.lista2.options[j++]=selOpcion);
}
}
</script>
</head>
<body>
<form id="form1" name="form1" method="post" action="">
<select name="lista1" onchange="funcion(this.value);">
<option value="">Seleccione</option>
<option value="Natural">Natural</option>
<option value="Juridico">Juridico</option>
<option value="Gubernamental">Gubernamental</option>
</select>
<select name="lista2" >
<option value="">Seleccione</option>
</select>
<input name="boton" type="submit" id="validar" value="validar" />
</form>
</body>
</html>
Claro está, las matrices has de rellenarlas con los valores de los registros que trae la consulta
Suerte