Foros del Web » Programando para Internet » Javascript »

duda sobre ocultar divs

Estas en el tema de duda sobre ocultar divs en el foro de Javascript en Foros del Web. Tengo una duda con el siguiente código: Cita: function DivNroAlternativas(estado){ if (estado =="1"){ document.getElementById('nro_opciones').style.disp lay="block"; } else{ document.getElementById('nro_opciones').style.disp lay = "none"; } } <table border="1"> ...
  #1 (permalink)  
Antiguo 20/11/2007, 06:40
Avatar de pcarvajal  
Fecha de Ingreso: enero-2002
Mensajes: 701
Antigüedad: 22 años, 3 meses
Puntos: 8
duda sobre ocultar divs

Tengo una duda con el siguiente código:
Cita:

function DivNroAlternativas(estado){
if (estado =="1"){
document.getElementById('nro_opciones').style.disp lay="block";
}
else{
document.getElementById('nro_opciones').style.disp lay = "none";
}
}

<table border="1">
<tr>
<td>
<select name="opciones" onchange="DivNroAlternativas(this.value)">
<option value=1 >Si</option>
<option value=0 >No</option>
</select>
</td>

<td valign="middle">
<div id="nro_opciones" style="display:none; position: relative;">
Ingrese número de alternativas <input type="text" size="2" maxlength="2" name="nro_opciones" value="0">
</div>
</td>
</tr>
</table>
Porqué si el div lo coloco fuera del tag <td valign="middle"> no se oculta, pero si la coloco dentro si lo hace?? vale decir:

Cita:
NO SE OCULTA:

<div id="nro_opciones" style="display:none; position: relative;">
<td valign="middle">
Ingrese número de alternativas <input type="text" size="2" maxlength="2" name="nro_opciones" value="0">
</td>
</div>
Cita:
SI SE OCULTA:
<td valign="middle">
<div id="nro_opciones" style="display:none; position: relative;"> Ingrese número de alternativas <input type="text" size="2" maxlength="2" name="nro_opciones" value="0">
</div>
</td>
  #2 (permalink)  
Antiguo 20/11/2007, 09:00
Avatar de GersonM  
Fecha de Ingreso: octubre-2006
Ubicación: Arequipa, Peru
Mensajes: 34
Antigüedad: 17 años, 6 meses
Puntos: 0
Re: duda sobre ocultar divs

Hola, miralo de esta forma, al colocar el div fuera de la "celda" estarias tratando de ocultar no solo del Div sino tambien la celda que a su vez forma parte de una fila y esta a una tabla y estas dos ultimas estan por encima del div que intentas ocultar.

En pocas palabras esa definición es incorrecta.

En el segundo caso se oculta porque esta bien estrucutrado todo y no crea conflictos
  #3 (permalink)  
Antiguo 20/11/2007, 09:12
Avatar de pcarvajal  
Fecha de Ingreso: enero-2002
Mensajes: 701
Antigüedad: 22 años, 3 meses
Puntos: 8
Re: duda sobre ocultar divs

Ahh perfecto!
Muchas gracias por la aclaración!
  #4 (permalink)  
Antiguo 20/11/2007, 12:48
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Re: duda sobre ocultar divs

Cita:
Iniciado por GersonM Ver Mensaje
En pocas palabras esa definición es incorrecta.

En el segundo caso se oculta porque esta bien estrucutrado todo y no crea conflictos
En otras palabras: La carencia ya no es de javascript sino de (x)HTML puro y duro. Un documento como el que dices que no funciona está horrorosamente formado. Tal y como dice la especificación el elemento TABLE sólo puede contener (CAPTION?, (COL*|COLGROUP*), THEAD?, TFOOT?, TBODY+), dentro de algunos de estos elementos encontraríamos elementos TR y, a su vez, dentro de ellos, elementos TD (o TH) que sí podrían contener elementos %flow; (elementos de bloque como DIVS o elementos en línea como EM, A... etc).



Para obtener un buen resultado en javascript hemos de tener un documento sólido formado en HTML correcto, si no nada de ello funcionará correctamente.


__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:10.