Ver Mensaje Individual
  #9 (permalink)  
Antiguo 20/04/2012, 12:32
furoya
(Desactivado)
 
Fecha de Ingreso: noviembre-2002
Ubicación: Ciudad Autónoma de Buenos Aires
Mensajes: 2.367
Antigüedad: 22 años, 4 meses
Puntos: 317
Respuesta: Ocultar varias columnas en tabla

Imagino que el asunto está muy conversado en el Foro, pero ya que estaba hice un código para postear.
Supongo que lo del onload es para poner una función al cargar, que contenga las variables que identifican a cada columna a borrar. Aunque no entiendo el segundo, "false".
Tampoco sé bien para que te sirve, pero puedes mirar esto y tratar de adaptarlo a tu página.

Código:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<html>
<head>
<meta http-equiv=Content-Type content="text/html; charset=utf-8">
<title>OCULTA COLUMNAS AL CARGAR.</title>
<script type="text/javascript">

function borra(cual) {

alert("Ésta es la tabla original. Se ocultarán columnas "+cual);

var ocultar = new RegExp(cual.split(",").join("|"));
var fila = document.getElementById('tabla1').getElementsByTagName('tr'); 
var columnas = fila[0].getElementsByTagName('td').length; 

for(f=0; f<fila.length; f++) {

for(c=0; c<columnas; c++) {
if (c.toString().search(ocultar) == -1) {fila[f].getElementsByTagName('td')[c].className = "muestra"; } 
else {fila[f].getElementsByTagName('td')[c].className = "oculta"; }
}

} 

}


</script>

<style type="text/css">

.oculta {display: none}
.muestra {display: table-cell}

</style>
</head>
<body onload = borra("1,4")> <!-- filas a borrar entre comillas y separadas por comas -->

<h2>Oculta algunas columnas.</h2>

<table border=1 id=tabla1><tbody><tr>
<td> 0 </td><td> 1 </td><td> 2 </td><td> 3 </td><td> 4 </td><td> 5 </td>
</tr><tr>
<td> ALFA </td><td> BRAVO </td><td> CHARLY </td><td> DELTA </td><td> ECO </td><td> FOXTROT </td>
</tr><tr>
<td> alfa </td><td> bravo </td><td> charly </td><td> delta </td><td> eco </td><td> foxtrot </td>
</tr></tbody></table>

</body>
</html>
Sigo pensando que hay una forma mejor de hacerlo. Pero ya tiene que estar inventada. Yo no la conozco, y si alguien quiere poner un link a alguna opción para

Código:
var ocultar = new RegExp(cual.split(",").join("|"));

...

if (c.toString().search(ocultar) == -1)
nos vendría muy bien. Porque confieso que intenté buscarla en gugl, y no tenía idea de la palabra clave que podía usar. Por eso no encontré un solo ejemplo.