Colorier cellule au clic

Résolu/Fermé
Adrix08 Messages postés 126 Date d'inscription mardi 3 juin 2008 Statut Membre Dernière intervention 25 février 2009 - 19 juin 2008 à 15:39
Adrix08 Messages postés 126 Date d'inscription mardi 3 juin 2008 Statut Membre Dernière intervention 25 février 2009 - 20 juin 2008 à 08:25
Bonjour,

tout d'abord voici la ligne de code qui je pens vous interessera le plus :

printf("<tdonclick=\"this.style.background='blue'\">   </td>\n",$id,$id); //

donc la les case se colorie bien mais j'aimerai que quand je reclic sur la case colorier elle redevienne de la couleur initial...si quelqu'un pouvai me venir en aide ! merci

1 réponse

macgawel Messages postés 664 Date d'inscription mercredi 7 mai 2008 Statut Membre Dernière intervention 1 novembre 2008 89
19 juin 2008 à 15:46
Bonjour.

Il faudrait faire une fonction Javascript :
SwitcherCouleur(id) {
   if (document.getElementById(id).style.background == 'blue') {
      document.getElementById(id).style.background = 'white';
   }
   else {
       document.getElementById(id).style.background = 'blue';
   }
}


Et dans ton code php, tu appelles la fonction JS :
printf("<td id='ligne'".$id." onclick=\"javascript:SwitcherCouleur('ligne".$id."')'\">   ­;</td>\n",$id,$id;)


(A voir pour la façon dont tu identifies ton TD, j'ai mis $id comme ça ;-) )
0
Adrix08 Messages postés 126 Date d'inscription mardi 3 juin 2008 Statut Membre Dernière intervention 25 février 2009 1
19 juin 2008 à 15:53
sa me donne une erreur ou nivo du { sur cette ligne SwitcherCouleur(id) {
0
macgawel Messages postés 664 Date d'inscription mercredi 7 mai 2008 Statut Membre Dernière intervention 1 novembre 2008 89 > Adrix08 Messages postés 126 Date d'inscription mardi 3 juin 2008 Statut Membre Dernière intervention 25 février 2009
19 juin 2008 à 16:03
sa me donne une erreur
Quelle erreur ?

Il faut bien sûr mettre ta fonction JS dans un bloc script.

Et bien l'écrire : je t'ai juste donné la trame, à toi de bien faire les choses :-P
Dans ton header :
<script type="text/javascript">
function SwitcherCouleur(id) {
...
}
</script>
0
Adrix08 Messages postés 126 Date d'inscription mardi 3 juin 2008 Statut Membre Dernière intervention 25 février 2009 1 > macgawel Messages postés 664 Date d'inscription mercredi 7 mai 2008 Statut Membre Dernière intervention 1 novembre 2008
19 juin 2008 à 16:06
c ce ke g fai apres avoir reflechi ^^ le probleme la c ke g bo cliker sur les case sa les colorie plu du tout
0
macgawel Messages postés 664 Date d'inscription mercredi 7 mai 2008 Statut Membre Dernière intervention 1 novembre 2008 89 > Adrix08 Messages postés 126 Date d'inscription mardi 3 juin 2008 Statut Membre Dernière intervention 25 février 2009
19 juin 2008 à 16:42
RAPPEL IMPORTANT

Je suis allé un peu vite en besogne, mais c'était pour te montrer l'idée...

Javascript :
<script type="text/javascript">
function SwitcherCouleur(id) {
// La propriété background ne contient pas que la couleur.
// On regarde si on trouve la chaîne 'blue' dans le style.background avec indexOf >= 0
// Si on le trouve, c'est qu'on est en bleu; sinon c'est qu'on est en blanc...
   if (document.getElementById(id).style.background.indexOf('blue', 0) >= 0) {
      document.getElementById(id).style.background = 'white';
   }
   else {
       document.getElementById(id).style.background = 'blue';
   }
}
</script>


Code php (il y avait des problèmes de quotes/apostrophes)
printf("<td border='1' id='ligne".$id."' onclick=\"javascript:SwitcherCouleur('ligne".$id."')\">  aaa ­;</td>\n".$id.$id);


Je te conseille d'utiliser Firefox et son extension Web Developer pour débugger : très efficace !
Et aussi, utilise un éditeur de texte à cooration syntaxique (Notepad++, par exemple). Ca aide à voir les erreurs de quotes.
0
Adrix08 Messages postés 126 Date d'inscription mardi 3 juin 2008 Statut Membre Dernière intervention 25 février 2009 1 > macgawel Messages postés 664 Date d'inscription mercredi 7 mai 2008 Statut Membre Dernière intervention 1 novembre 2008
20 juin 2008 à 08:25
merci bcp macgawel sa marche impec :)
0