Page 1 sur 1

Problème click background color td au chargement d'une page

Posté : 15 mai 2019, 15:01
par berniefrache
Bonjour,

Je vous explique mon problème.

je dois faire un tableau (que j’ai fait classique <table></table>) et l'utilisateur va devoir cocher certaines cases <td>.
Chaque case est une variable booléenne stockée dans une base.

Quand l'utilisateur coche, elle devient bleue. Quand il décoche, elle redevient blanche .
A chaque coche, je fais fait un "UPDATE test SET $id = NOT $id WHERE id = 'user'"; pour modifier la valeur dans la base
Ca ca marche bien

Mon problème est le suivant :

L'utilisateur peut retourner sur son tableau plusieurs fois
Donc, lorsqu’il se reconnectera, toutes les cases déjà cochées auparavant doivent donc être cochées quand il se reconnecte

Je fais ca :

Code : Tout sélectionner

if ($id1_1==1) {echo "<style>#id1_1 {background-color:blue;}</style>" ;}
Or, quand je teste, les cases sont bien cochées mais quand je veux les décocher, l’UPDATE s’applique bien, mais la couleur ne change pas…elle change qu’au clic d’après (faut 2 clics pour que ca change quoi…).

Par contre, quand je me reconnecte, et que je coche une case pas cochée, l’update et la couleur changent bien au premier clic…

Du coup, ca créé un décalage. Et je sais pas trop pourquoi.

Voilà le code que j’utilise pour le changement de couleur.

Code : Tout sélectionner

$(document).ready(function () { $('td').click(function () { if(this.style.background == "" || this.style.background =="white") { $(this).css('background', 'blue'); } else { $(this).css('background', 'white'); } }); });
Est-ce que quelqu'un aurait une idée pour supprimer le clic en trop au chargement de la page ?

Merci,
Bernard

Re: Problème click background color td au chargement d'une page

Posté : 15 mai 2019, 15:13
par Spols
tu utilise une fois background et une fois background-color, harmonise le tout ca ira mieux