cacher/affiche selon le besoin de l'utilisateur des lignes d'un tableau

nous
Invité n'ayant pas de compte PHPfrance

14 sept. 2007, 16:03

Bonjour,

Voila, j'affiche un tableau avec de nombreuses donnes prise dans plusieurs tables, j'ai plusieurs etape dans mon tableau, la date du contrat, sur quoi il porte et les horaires, mais il peux y avoir plusieurs contrat d'afficher, donc quand il sont encien il sont cacher grace a <tr style="display:inline "> or <tr style="display:none"> selon si la date de fin est passé ou pas. Le souci c'est que je voudrai que l'utilisateur puisse quand meme le faire afficher grace a un petit bouton a coté de l'intitulé du contrat. Mais je ne sais pas de quel manière faire etant donnée que je n'ai pas pu utiliser les div(car cest seulement des lignes du tableau que je cache, je garde l'intitulé mais la raison et les horaire sont caché.
Je pense pas avoir été très clair, mais j'espère que vous me comprendré et que vous pourrez m'aider.

Merci d'avance


je poste suite au msg http://www.phpfrance.com/forums/voir_sujet-32783.php

ViPHP
ViPHP | 2287 Messages

14 sept. 2007, 17:04

Donc ton bouton une fois cliqué doit appeler une fonction javascript qui affiche les lignes du tableau qui sont au départ masquées, c'est bien cela que tu veux ?
if(!@work()){ Nespresso(); } else { what(); }
______________________________

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

15 sept. 2007, 17:42

Tu n'étais pas obligé d'ouvrir un nouveau sujet... suffisait de demander le déplacement :roll:

Inspire toi de ces sujets (me semble qu'il doit même en avoir un avec des tableaux de Cyrano)
http://www.phpfrance.com/forums/voir_re ... php#205115
http://www.phpfrance.com/forums/voir_sujet-12366.php

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

nous
Invité n'ayant pas de compte PHPfrance

17 sept. 2007, 11:28

oui calimero c'est bien ça


Oki truc je regarde ça, merci

nous
Invité n'ayant pas de compte PHPfrance

17 sept. 2007, 14:21

bon j'ai essayer de faire de la même façon que l'exemple mais cela ne fonctionne pas.
alors j'ai ma fonction :
 function affcach(idbloc)
{
    var etat = $(idbloc).style.display;
    $(idbloc).style.display = (etat == 'none') ? 'inline' : 'none';
}

l'endroit ou l'on affiche les bouton pour marsquer ou afficher :
<td align="center" valign="middle"><?php if (($row[1]>$date)  or ($row[2]>$date) or ($row[3]>$date)) { ?>    <input type="button" value="-" onclick="affcach(det<?php echo($row[5]); ?>);"> <?php  $sty='visible'; } else { ?>    <input type="button" value="+" onclick="affcach(det<?php echo($row[5]); ?>);"> <?php $sty='hidden'; } ?>
   </td>

et les zones qui sont soit masquer soit afficher sont respectivement marqué baliser de :
<tr  style="display:none" id="det<?php echo($row[5]); ?>">
ou
<tr style="display:inline"  id="det<?php echo($row[5]); ?>">

voila, si vous voyez mes erreurs ou pouvez m'aider avec ceci

merci

ViPHP
ViPHP | 2287 Messages

17 sept. 2007, 14:26

alors j'ai ma fonction :
 function affcach(idbloc)
{
    var etat = $(idbloc).style.display;
    $(idbloc).style.display = (etat == 'none') ? 'inline' : 'none';
}
hmmm, tu ne serais pas en train de t'emmêler un peu les pinceaux entre javascript et php toi ? :-)

Petit indice : un $ en javascript, c'est louche !
if(!@work()){ Nespresso(); } else { what(); }
______________________________

nous
Invité n'ayant pas de compte PHPfrance

17 sept. 2007, 15:08

j'ai fait par rapport a l'exemple que truc ma afficher

ViPHP
ViPHP | 2287 Messages

17 sept. 2007, 15:37

Dans l'exemple où tu as pris ceci, il y avait ça en plus :

Code : Tout sélectionner

function $(elt) { return document.getElementById(elt); }
Sans cela ça ne risque pas de marcher ;-) Cette fonction bizarrement nommée "$" permet de retrouver un objet DOM à partir de son id.

Sans cela ta fonction ne trouvera jamais sur quelle balise appliquer le style. Au fait, surveilles-tu bien les erreurs javascript dans ta page ?
if(!@work()){ Nespresso(); } else { what(); }
______________________________

nous
Invité n'ayant pas de compte PHPfrance

17 sept. 2007, 16:18

oki, je comprenai pas, je l'ai mis mais j'ai toujours le meme probleme ça me fait rien.

ça m'affiche qu'il y a une erreur ligne 21 caractere 5 et ça marque objet requis
la ligne correspond a celle ci : function $(elt)

merci

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

17 sept. 2007, 16:45

je n'ai pas tout regardé mais il te manque les délimiteurs de chaine de caractères pour le paramètre de la fonction affcach() :
onclick="affcach('det<?php echo($row[5]); ?>');"

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute