Ver Mensaje Individual
  #3 (permalink)  
Antiguo 18/09/2007, 13:26
Avatar de daniloquispe
daniloquispe
 
Fecha de Ingreso: mayo-2007
Mensajes: 38
Antigüedad: 17 años, 8 meses
Puntos: 0
Re: Ocultar/mostrar filas de una tabla

Cita:
Iniciado por txels Ver Mensaje
Yo mejor que display usaría una propiedad mas antigua y que funcoina en todos los navegadores: visibility

así quedaría:

<table class="tblgestion">
<!-- Esta fila sale oculta -->
<tr id="filaoculta" style="visibility:hidden;">
<!-- Celdas y más celdas... -->
</tr>
</table>


<a href="" onclick="Muestra(idTabla)">Mostrar</a>

<script language="javascript" type="text/javascript">
function Muestra(idTabla){

document.getElementById(idTabla).style.visibility = "visible";


}
</script>



se que no es lo mismo, pues deja el hueco que ocupa, pero te podría valer...
Hola:

Gracias por la respuesta. Esta vez funciona en ambos navegadores (IE y Firefox); pero... Ya lo dijiste, deja un hueco en el lugar donde cae la celda, y la verdad no se ve bien.

Estuve haciendo pruebas y me topé con esto: Cambié el código del enlace:

Código HTML:
<a href="" onclick="mostrarFiltros(); return false">Mostrar</a> 
y definí mi función mostrarFiltros() así (OJO con los números de línea que pongo):

Código HTML:
<script type="text/javascript">
    function mostrarFiltros()
    {
        var filtro = document.getElementById('filafiltros').style.display;  // 1
        filtro = filtro == 'none' ? 'table-row' : 'none';  // 2
        document.getElementById('filafiltros').style.display = filtro;  // 3
    }
</script> 
El código es exactamente el mismo, sólo cambia la estructura, y evidentemente sigue fallando en IE7. Pero lo curioso es que el mensaje de error sobre la propiedad display sale en la linea 3 (o sea que en la línea 1 IE7 SÍ reconoce el display pero en la línea 3 NO la reconoce). ¿Es acaso display de sólo lectura en IE7?

¿Hay alguna otra solución?