Remplacer une ligne de tableau par une autre
Bonjour,
Je cherche à afficher/masquer des lignes de tableau HTML. En fait à remplacer une ligne affichée par une autre. Mon code est le suivant :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<script>
function cache(idElement) {
document.getElementById(idElement).style.display = "none";
document.getElementById(idElement).style.visibility="hidden";
}
function affiche(idElement) {
document.getElementById(idElement).style.display = "block";
document.getElementById(idElement).style.visibility="visible";
}
</script>
<body>
<table border="1">
<tr><td>0</td><td> </td></tr>
<tr id="ligne1"><td>1</td><td><input type="button" onclick="affiche('ligne2');cache('ligne1');"></td></tr>
<tr id="ligne2" style="display:none;visibility:hidden;"><td>2</td><td><input type="button" onclick="affiche('ligne1');cache('ligne2');"></td></tr>
<tr id="ligne3"><td>3</td><td><input type="button" onclick="affiche('ligne4');cache('ligne3');"></td></tr>
<tr id="ligne4" style="display:none;visibility:hidden;"><td>4</td><td><input type="button" onclick="affiche('ligne3');cache('ligne4');"></td></tr>
</table>
<br>
</body>
</html> |
Ça ne fonctionne pas correctement sous Firefox et Chrome et je ne comprends pas pourquoi : les deux <td> de mon <tr> sont fusionnés en un seul au moment de l'affichage.
Pire : ça fonctionne correctement sous IE8 ce qui me fend le coeur...
Pourriez-vous m'aider ?