Fonction Javascript pour cacher une colonne d'un tableau HTML : bug Firefox
Bonjour,
J'ai pass� des heures � chercher la solution sur internet, et je n'y suis pas arriv�. :roll:
Je cherche � faire une fonction Javascript manipulant le DOM que j'appelle avec un �v�nement onClick, afin de masquer une colonne donn�e (param�tre) d'un tableau HTML. J'y suis pratiquement arriv�, mais cela ne fonctionne que sur IE (pour une fois !) et pas sur Firefox. Ce qui me d�route c'est surtout l'insertion automatique de <tbody> par Firefox dans le code, ce qui me semble pose probl�me. J'ai alors ins�r� le <tbody> dans le code source.
Voici les codes HTML et Javascript.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
<div class="tableV">
<table id="tableau">
<tbody>
<tr>
<th class="cfra"> français </th>
<th class="ceng"> english </th>
</tr>
<tr>
<td class="titre_cellule"> xxxx </td>
<td class="titre_cellule"> xxxx </td>
</tr>
</tbody>
</table>
</div> |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
function afficherCacher(no_col) {
var tableau = document.getElementById('tableau');
var tablebody = tableau.childNodes;
alert('tablebody= '+ tablebody.length);
var lignes = tablebody[0].childNodes;
alert('lignes= '+lignes.length);
for (var i=0;i<lignes.length;i++) {
var cellules = lignes[i].childNodes;
if ((cellules[no_col-1].style.display == 'inline') || (cellules[no_col-1].style.display == '')) {
cellules[no_col-1].style.display = 'none';
}
else {
cellules[no_col-1].style.display = 'inline';
}
}
} |
J'ai ins�r� des 'alert' pour d�tecter les diff�rences de comportement de IE et FF.
IE d�tecte 1 tbody et 5 lignes de tableau
FF d�tecte 3 tbody mais 0 lignes de tableau
Est-ce que quelqu'un saurait me dire ce qui ne va pas ?
Merci