IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Changer la couleur d'une ligne d'un tableau


Sujet :

JavaScript

  1. #1
    Membre éclairé Avatar de Filippo
    Homme Profil pro
    Statisticien
    Inscrit en
    Mai 2004
    Messages
    864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Statisticien

    Informations forums :
    Inscription : Mai 2004
    Messages : 864
    Points : 881
    Points
    881
    Par défaut Changer la couleur d'une ligne d'un tableau
    Bonjour,
    j'éxécute une fonction qui modifie la couleur d'un CheckBoxList (ici appelé Source) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function verif(Source)
        {
            document.all(Source).bgColor="magenta";
            document.all(Source).fgColor="white";
        }
    Et qui marche bien.

    En revanche si j'essaie de faire modifier par cette fonction, non seulement la couleur du CheckBoxList mais aussi celle de la ligne du tableau dans laquelle ce contrôle est placé la couleur de la ligne ne change pas.


    Les cases du tableau portent l'identifiant t_IdentifiantDuCheckBoxList_11 et t_IdentifiantDuCheckBoxList_12 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    function verifcoche(Source)
        {
            document.all("t_" + Source + "_11").bgColor="magenta";
            document.all("t_" + Source + "_11").fgColor="white";
            document.all("t_" + Source + "_12").bgColor="magenta";
            document.all("t_" + Source + "_12").fgColor="white";
            document.all(Source).bgColor="magenta";
            document.all(Source).fgColor="white";    }
    Quelqu'un aurait-il une idée ?
    Merci
    (\ _ /)
    (='.'=) Voici Lapinou. Aidez le à conquérir le monde
    (")-(") en le reproduisant

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 638
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 638
    Points : 66 668
    Points
    66 668
    Billets dans le blog
    1
    Par défaut
    oula attention document all est exclu IE ...

    mieux vaut utiliser la syntaxe des id si comme tu le dis tes objets ont bien une id ...


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('idobjet').style.backgroundColor=...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre éclairé Avatar de Filippo
    Homme Profil pro
    Statisticien
    Inscrit en
    Mai 2004
    Messages
    864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Statisticien

    Informations forums :
    Inscription : Mai 2004
    Messages : 864
    Points : 881
    Points
    881
    Par défaut
    Citation Envoyé par SpaceFrog
    oula attention document all est exclu IE ...

    mieux vaut utiliser la syntaxe des id si comme tu le dis tes objets ont bien une id ...


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('idobjet').style.backgroundColor=...
    Ah merci SpaceFrog, j'essaie cette syntaxe ...

    Ca marche !
    Super !
    Bravo !

    Il y a juste le foreground qui reste noir mais le background passe bien en magenta.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    function verifcoche(Source)
        {
            document.getElementById("t_" + Source + "_11").style.backgroundColor="magenta";
            document.getElementById("t_" + Source + "_12").style.backgroundColor="magenta";
            document.getElementById("t_" + Source + "_11").style.foregroundColor="white";
            document.getElementById("t_" + Source + "_12").style.foregroundColor="white";
            document.all(Source).bgColor="magenta";
            document.all(Source).fgColor="white";
        }
    (\ _ /)
    (='.'=) Voici Lapinou. Aidez le à conquérir le monde
    (")-(") en le reproduisant

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 638
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 638
    Points : 66 668
    Points
    66 668
    Billets dans le blog
    1
    Par défaut
    foregroundColor??? ça existe ça ???

    style.color si tu veux la police ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Membre éclairé Avatar de Filippo
    Homme Profil pro
    Statisticien
    Inscrit en
    Mai 2004
    Messages
    864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Statisticien

    Informations forums :
    Inscription : Mai 2004
    Messages : 864
    Points : 881
    Points
    881
    Par défaut
    Citation Envoyé par SpaceFrog
    foregroundColor??? ça existe ça ???

    style.color si tu veux la police ...
    Je ne sais pas, en tout cas ça n'a pas causé d'erreur.

    J'utilise style.color pour la police.

    Encore merci

    Fonction corrigée pour ceux que ça intéresse :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     function verifcoche(Source)
        {
     
            document.getElementById("t_" + Source + "_11").style.backgroundColor="magenta";
            document.getElementById("t_" + Source + "_12").style.backgroundColor="magenta";
            document.getElementById("t_" + Source + "_11").style.color="white";
            document.getElementById("t_" + Source + "_12").style.color="white";
     
            document.getElementById(Source).style.backgroundColor="magenta";
            document.getElementById(Source).style.color="white";
     
        }
    (\ _ /)
    (='.'=) Voici Lapinou. Aidez le à conquérir le monde
    (")-(") en le reproduisant

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 638
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 638
    Points : 66 668
    Points
    66 668
    Billets dans le blog
    1
    Par défaut
    mais tu cherches à changer quoi avec forgroundColor ???
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  7. #7
    Membre éclairé Avatar de Filippo
    Homme Profil pro
    Statisticien
    Inscrit en
    Mai 2004
    Messages
    864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Statisticien

    Informations forums :
    Inscription : Mai 2004
    Messages : 864
    Points : 881
    Points
    881
    Par défaut
    Le tableau peut comporter beaucoup de lignes.

    Je cherche à modifier l'apparence d'une ligne une fois qu'on a cliqué dessus (sur un CheckBoxList qui est placé dessus) pour que facilement en regardant le tableau on voit ce qui a déjà été cliqué.

    Je trouve qu'avec des couleurs bien "flashy" ça saut mieux aux yeux, donc modifier couleur de police et fond ... voilà

    (\ _ /)
    (='.'=) Voici Lapinou. Aidez le à conquérir le monde
    (")-(") en le reproduisant

  8. #8
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 638
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 638
    Points : 66 668
    Points
    66 668
    Billets dans le blog
    1
    Par défaut
    donc tout est résolu ?

    je pensais que backgroundColor et color ne te suffisaient pas ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  9. #9
    Membre éclairé Avatar de Filippo
    Homme Profil pro
    Statisticien
    Inscrit en
    Mai 2004
    Messages
    864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Statisticien

    Informations forums :
    Inscription : Mai 2004
    Messages : 864
    Points : 881
    Points
    881
    Par défaut
    Oui c'est parfait, le problème est bien résolu (j'ai cliqué sur le bouton résolu ).

    Là j'essaie juste d'accéder à l'élément ligne du tableau (<TR>) au lieu des deux colonnes (<TD>), color s'applique bien mais pas backgroundColor.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById("t_" + Source + "_l").style.backgroundColor="yellow";
    ne change pas la couleur de fond de la ligne en question.

    En revanche :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById("t_" + Source + "_l").style.color="blue";
    Met bien les textes placés sur la ligne en bleu.

    Référencer la ligne m'éviterait d'avoir à donner un ID à toutes les cases du tableau et de ne référencer que les lignes.

    Mais bon j'ai déjà une solution faisable avec la modification des cases du tableau.
    (\ _ /)
    (='.'=) Voici Lapinou. Aidez le à conquérir le monde
    (")-(") en le reproduisant

  10. #10
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 638
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 638
    Points : 66 668
    Points
    66 668
    Billets dans le blog
    1
    Par défaut
    as tu une couleur de fond sur les td ..

    sinon pour acceder au td sasn id il faut passer par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementsByTagName('table')[0].getElementsByTagName('tbody')[0].getElementsByTagName('tr')[nr ligne]
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  11. #11
    Membre éclairé Avatar de Filippo
    Homme Profil pro
    Statisticien
    Inscrit en
    Mai 2004
    Messages
    864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Statisticien

    Informations forums :
    Inscription : Mai 2004
    Messages : 864
    Points : 881
    Points
    881
    Par défaut
    Merci encore.

    Je m'aperçois à l'instant que ce que j'ai fait fonctionne pour les lignes dont je n'ai pas défini de couleur au départ (j'alterne les lignes une grise, une blanche pour plus de visibilité).

    Là j'essayais le code de la faq pour changer la couleur des lignes quandon passe la souris dessus; ça ne marche que pour les lignes dont je n'ai pas défini de couleur au départ.

    Donc soit je retire mon grisage une ligne sur deux soit j'utilsie ça.

    je note le code pour accéder aux colonnes sans ID.

    Merci
    (\ _ /)
    (='.'=) Voici Lapinou. Aidez le à conquérir le monde
    (")-(") en le reproduisant

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Changer la couleur d'une ligne dans un DBGrid
    Par fba dans le forum Composants VCL
    Réponses: 5
    Dernier message: 24/10/2005, 20h30
  2. Changer la couleur d une ligne de tableau au survol
    Par logica dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 18/07/2005, 11h57
  3. Réponses: 7
    Dernier message: 28/06/2005, 11h53
  4. Réponses: 8
    Dernier message: 14/05/2004, 11h18
  5. [VB6]Changer la couleur d'une ligne d'un ListView
    Par Troopers dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 14/03/2003, 17h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo