Cellule qui change de couleur et récupération de l'information
cs_Stephane33
Messages postés630Date d'inscriptionsamedi 15 février 2003StatutModérateurDernière intervention 9 octobre 2011
-
20 mars 2008 à 12:28
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 2013
-
21 mars 2008 à 09:17
Je sors un peu de mon territoire de prédilection,
Je veux afficher une grille.
Chaque celulle à deux états possible oui ou non défini par une couleur Vert ou Rouge.
L'utilisateur clique sur la cellule pour changer son état.
Je ne veux pas qu'a chaque click, la page soit rechargée (Ajax ?)
Et je dois récupérer un état pour chaque cellule.
Avez vous une achtuce...
D'avance Merci
Le savoir ne sert que si il est partagé par tous.
A voir également:
Cellule qui change de couleur et récupération de l'information
maelob
Messages postés943Date d'inscriptionmardi 14 novembre 2006StatutMembreDernière intervention 7 août 20093 20 mars 2008 à 12:35
Bonjour!!!
Oui la meilleure solution si tu veux que ta page ne soit pas rechargée et que en même temps ça mette à jour ta base de donnée c'est l'ajax. Donc un petit lien
Sinon pour changer la couleur de la cellule il faut donner un id au td de la cellule et faire un truc du genre document.getElementById("ton_id").style.bgcolor = 'ta_couleur';
Pour récuperer l'etat je ne sais pas si on peut récuperer la valeur d'un td donc je préfére te dire de mettre un champs caché avec un id aussi ou de mettre ta valeur dans un div avce id et pareil tu recuperes avec document.getElementById('ton_id').value;
et pour la modifier document.getElementById('ton_id').value = "nouvelle valeur";
cs_Stephane33
Messages postés630Date d'inscriptionsamedi 15 février 2003StatutModérateurDernière intervention 9 octobre 20111 20 mars 2008 à 15:08
D'abord merci pour votre aide
En fait je veux faire une grille temps, ou l'utilisateur définit sa dispo. Il clique sur une cellule pour changer son état. Cela j'arrive à la faire.
Ce que je recherche maintenant, c'est
Lorsque l'utilisateur clique sans relacher (mousedown) et qu'il glisse sur les autres cellules , les cellules survolées prennent l'état de la première cellule (qui à pris l'évenement mousedown).
Par contre effectivement à priori je ne peux pas récupérer l'état de ces cellule.
Est-il possible de gérer cela dans une variable (Id/value) et la poster par la suite ?(à ma charge de récupérer ces données et des les sauvegarder.)
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 20 mars 2008 à 15:27
>>Par contre effectivement à priori je ne peux pas récupérer l'état de ces cellule.
à priori... pas de raison au contraire...
on ne sait pas ce qu'est ( ce que tu appelles ! ) l'état de la cellule,
mais si tu sais la modifier, on peut récuprér cet état.
tu parles de vert et rouge... supposons que ce soit le style.backgroundColor
qui définisse cet état....
cellule.style.backgroundColor="#FF0000"; ça met en rouge
alert(cellule.style.backgroundColor) ça affiche, et la cellule
sur laquelle on clique est connue.
oclick, onmouseUp, onmouseMove, onmouseDown, ... ou autres...
ou alors, je ne comprend pas ton souci... ce qui est parfaitement possible !
<hr /> Cordialement Bul
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_Stephane33
Messages postés630Date d'inscriptionsamedi 15 février 2003StatutModérateurDernière intervention 9 octobre 20111 20 mars 2008 à 18:31
Merci Bultez
Donc si j'ai bien compris je peux récupérer l'état de la cellule.
En faite cet état je veux le réalise avant la validation des données
Pour les cellules, quand
L'utilisateur clique avec sa souris sur une cellule appelons la A1
1/ Celle ci change de couleur que si il relache le bouton de la souris
2/ Il ne relache pas le bouton et déplace sa souris sur d'autres cellules (ligne ou colonne) à la manière d'excel et lorsque qu'il relache le bouton toutes les cellules survolées sont à la couleur de la première celulle.
Le savoir n'est que le filtre de l'experience
cs_Stephane33
Messages postés630Date d'inscriptionsamedi 15 février 2003StatutModérateurDernière intervention 9 octobre 20111 20 mars 2008 à 20:52
j'ai trouvé ça c'est une piste je vais creuser ce code
http://loc-europe.com/page/calendrier3.php mais si vous avez mieux je suis preneur
Le savoir n'est que le filtre de l'experience
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 21 mars 2008 à 09:17
Bonjour,
>>L'utilisateur clique avec sa souris sur une cellule appelons la A1
onclick==>mémorisé=this.style.backgroundColor
ou onmouseDown
1/ Celle ci change de couleur que si il relache le bouton de la souris
onMouseUp
2/ Il ne relache pas le bouton et déplace sa souris sur d'autres
cellules (ligne ou colonne)
onMouseMove..==> this.style.backgroundColor=mémorisé
s'il n'y a pas eu de onMouseUp !
à vérifier si onMouseMove est bien effectif sur les cellules, les lignes, table,...