Afficher/cacher une ligne tr de tableau

Eléphant du PHP | 149 Messages

27 avr. 2005, 11:15

Bonjour à tous!

J'ai un script qui me permet d'afficher/cacher une balise selon sa classe, mais ce script ne marche pas pour une balise tr de tableau et je n'arrive pas à trouver comment je peux faire....

voici le code:

Code : Tout sélectionner

function afficheDescription(bouton) { var description = bouton; while(description = description.nextSibling) { if(description.nodeType == 1 && description.className == "description") { if(description.style.visibility=="hidden") { description.style.visibility="visible"; bouton.innerHTML="<img src=\"../images/moins.gif\" />"; }else { description.style.visibility="hidden"; bouton.innerHTML="<img src=\"../images/plus.gif\" />"; } break; } } }
Merci pour votre aide

Manuscle
Modifié en dernier par manuscle le 27 avr. 2005, 11:43, modifié 1 fois.
"Si tu travailles avec un marteau-piqueur pendant un tremblement de terre, désynchronise-toi, sinon tu travailles pour rien."
JC Vandamme.

Eléphant du PHP | 149 Messages

27 avr. 2005, 11:41

J'aimerais ajouter ce code que j'ai fait:

Code : Tout sélectionner

<table> <tr class="bouton" onclick="javascript:afficheDescription(this)"> <td><img src="../images/plus.gif" /></td> <td width="100px">Objet</td> <td width="50px">date</td> <td width="50px">Utilisateur</td> </tr> <tr class="description" style="visibility:hidden;"> <td colspan="4">Description blahblah</td> </tr> </table>
Lorsque je clique sur l'image, la ligne tr classe "description" apparait alors que la ligne classe "bouton" disparait alors qu'elle ne devrait pas......j'y suis presque!
"Si tu travailles avec un marteau-piqueur pendant un tremblement de terre, désynchronise-toi, sinon tu travailles pour rien."
JC Vandamme.

Invité
Invité n'ayant pas de compte PHPfrance

01 sept. 2006, 17:42

Utilise plutot DISPLAY (inline ou block) à la place de visibility, simplifie ta fonction tu n'a pas besoin de la compliquer autant, mais un id sur ton image et fait un getElementById().src="" en fonction de du display