hola a todos. mi priblema es el siguiente: tengo un formulario donde hago una pregunta, si es o no dependiente economico y con un radio boton si es si, muestro unos campos, si es no muestro otros (de estudiante o de trabajador), puse unas funciones en javascript para que oculte y muestre pero no funcionan correctamente, mas bien creo que no las IMPLEMENTO yo correctamente por que, por defecto le puse que aparesca en si y si le doy no deberia mostrarse otra cosas, pero no cambia, hasta que el doy de nuevo en si es cuendo cambia. alguien sabe donde esta mir error?
ver ejemplo
aqui les dejo el codigo(disculpen pero es mucho):
Código HTML:
<table>
<tr>
<td align="right">¿Eres dependiente economico?</td>
<td align="left" >
<input name="rbn_es_dependiente" type="radio" value="s" <?php if($_SESSION["rbn_es_depe"]=="s") echo " checked"; ?>
onChange="mostrar_ocultar('tabla_a1'); mostrar_ocultar('tabla_a2');
mostrar_ocultar('tabla_b1'); mostrar_ocultar('tabla_b2');" checked="checked">
Si
<input name="rbn_es_dependiente" type="radio" value="n" <?php if($_SESSION["rbn_es_depe"]=="n") echo " checked"; ?>
onChange="mostrar_ocultar('tabla_a1'); mostrar_ocultar('tabla_a2');
mostrar_ocultar('tabla_b1'); mostrar_ocultar('tabla_b2');">
No
</td>
</tr>
<tr>
<td align="right"> </td>
<td align="left" > </td>
</tr>
<tr>
<td align="right" valign="top">
<table id="tabla_a1"
<?php
if($_SESSION["xxxxx1"]=true)
echo " style='display:block'";
else
echo " style='display:none'"
?>
class="Texto" border="0">
<tr><td>
En caso de ser estudiante:
</td></tr></table>
</td>
<td align="left" >
<table id="tabla_a2"
<?php
if($_SESSION["xxxxx1"]==true)
echo " style='display:block'";
else
echo " style='display:none'"
?>
class="Texto" border="0">
<tr><td>
<input name="ckb_estudiante" type="checkbox" onClick="mostrar_ocultar('div_estudiante')"
value="es_estudiante" <?php if($_SESSION["ckb_estudia"]==true)echo " checked"; ?>>
Si soy estudiante<br>
<table id="div_estudiante"
<?php
if($_SESSION["ckb_estudia"]==true)
echo " style='display:block'";
else
echo " style='display:none'"
?>
class="Texto" border="0">
<tr>
<td>
<br>
Nombre de la escuela donde estudia<br>
<input name="txt_escuel" type="text" id="txt_escuel" size="38" maxlength="65"
onKeyPress="valida_letras_y_numeros(true)" value="<?php echo $_SESSION["txt_escuela"]; ?>">
<br><br>
Nivel o grado<br>
<input name="txt_nivel" type="text" id="txt_nivel" size="38" maxlength="10" onKeyPress="valida_letras_y_numeros(true)"
value="<?php echo $_SESSION["txt_nivel_e"]; ?>">
<br><br>
Especialidad<br>
<input name="txt_especi" type="text" id="txt_especi" size="38" maxlength="65"
onKeyPress="valida_letras_y_numeros(true)" value="<?php echo $_SESSION["txt_especia"]; ?>">
<br><br>
Promedio escolar<br>
<input name="txt_pormedio" type="text" id="txt_pormedio" size="38" maxlength="3" onKeyPress="valida_numeros()"
value="<?php echo $_SESSION["txt_pormedi"]; ?>">
<br><br>
</font>
</td>
</tr>
</table>
</td></tr></table>
</td>
</tr>
<tr>
<td align="right" valign="top">
<table id="tabla_b1"
<?php
if($_SESSION["xxxxx2"]==true)
echo " style='display:block'";
else
echo " style='display:none'"
?>
class="Texto" border="0">
<tr><td>
En caso de ser trabajador:
</td></tr></table>
</td>
<td align="left" >
<table id="tabla_b2"
<?php
if($_SESSION["xxxxx2"]==true)
echo " style='display:block'";
else
echo " style='display:none'"
?>
class="Texto" border="0">
<tr><td>
<input name="ckb_trabajador" type="checkbox" value="es_trabajador" onClick="mostrar_ocultar('div_trabajador')"
<?php if($_SESSION["ckb_trabaja"]==true)echo " checked"; ?>> Si soy trabajador<br>
<table id="div_trabajador"
<?php
if($_SESSION["ckb_trabaja"]==true)
echo " style='display:block'";
else
echo " style='display:none'"
?>
class="Texto" border="0">
<tr>
<td>
<br>
Nombre del centro de trabajo<br>
<input name="txt_centro" type="text" id="txt_centro" size="38" maxlength="65"
onKeyPress="valida_letras_y_numeros(true)" value="<?php echo $_SESSION["txt_centroT"]; ?>">
<br><br>
¿Es jubilado o pensionado?<br>
<input name="rbn_es_jubilado" type="radio" value="s" <?php if($_SESSION["rbn_es_jubi"]=="s") echo " checked"; ?>>
Si
<input name="rbn_es_jubilado" type="radio" value="n" <?php if($_SESSION["rbn_es_jubi"]=="n") echo " checked"; ?>>
No<br><br>
Telefono<br>
<table border="0">
<tr>
<td>
<font class="InfoDato">Telefono</font><br>
<input name="txt_tel_tra" type="text" id="txt_tel_tra" size="20" maxlength="10"
onKeyPress="valida_numeros()" value="<?php echo substr($_SESSION["txt_tel_tra"],0,10); ?>">
</td>
<td>
<font class="InfoDato">Extensión</font><br>
<input name="txt_tel_o_ex" type="text" id="txt_tel_o_ex" size="5" maxlength="5"
onKeyPress="valida_numeros()" value="<?php echo substr($_SESSION["txt_tel_tra"],10,5); ?>">
</td>
</tr>
</table>
</td>
</tr>
</table>
</td></tr></table>
</td>
</tr>
</table>
aqui esta la funcion de javascript que se encuentra en el archivo herramientas.js
Código:
function mostrar_ocultar(idCapa)
{
if (document.getElementById(idCapa).style.display == "block")
{
document.getElementById(idCapa).style.display='none';
}
else
{
document.getElementById(idCapa).style.display='block';
}
}
de antemano gracias por sus respuestas
nota. no es un post repetido.