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 :

Récupérer puis changer une Class


Sujet :

JavaScript

  1. #1
    Invité
    Invité(e)
    Par défaut Récupérer puis changer une Class
    Bonjour,

    Je voudrais récupérer pour la sauvegarder la class d'un objet.
    seulement cet objet je ne sais fabriquer son ID que par une concaténation
    d'un nombre et un texte comme ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    Lanchold=12:
    CleTxt="X"+Lanchold;
    change_class(CleTxt);
     
    /* ==============et plus loin j'ais================ */
    function change_class(Lui) 
     { 
       leold = document.getElementById(Lui); 
       agarder=leold.className;
       // ==pour garder la class que je veux remettre ensuite
       leold.className="uneclasseprovisoire" ; 
     }
    Cela semble ne pas marcher voyez vous mon erreur, merci d'avance.

  2. #2
    Expert éminent sénior
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 651
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 651
    Points : 11 145
    Points
    11 145
    Par défaut
    Bonsoir,

    est-ce que tu appelles la fonction après le chargement complet de la page ?
    Comme tu le présentes, je n'en ai pas l'impression :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Lanchold=12:
    CleTxt="X"+Lanchold;
    change_class(CleTxt);
    Si tu appelles cette fonction avant le chargement complet de la page, l'objet avec l'id que tu as défini n'existe pas.

    N'oublie pas aussi de déclarer systématiquement tes variables.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Merci à toi l'Ami.

    Oui, de coté là, c'est parfait, car tout le javascript ne peut être activé qu'a une première action du visiteur.
    Par ailleurs je ne l'avais pas mis ici mais mes variables sont initialisées par varxxx Etc...

    Merci pour cette vigilance.

  4. #4
    Expert éminent sénior
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 651
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 651
    Points : 11 145
    Points
    11 145
    Par défaut
    Peut-on avoir plus de code ?

  5. #5
    Invité
    Invité(e)
    Par défaut
    Bonjour l'Ami,
    En fait le premier code se suffit a lui même et il est complet,
    il devrait mettre dans "agarder" le nom de la class ??
    par exemple si je fais un alert (agarder); il devrait m'afficher petitefonte
    si c'est son contenu !
    Et prendre la nouvelle classe par exemple grossefonte !

  6. #6
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Points : 9 944
    Points
    9 944
    Par défaut
    Ca on l'a bien compris mais s'il ne fonctionne pas, c'est que le problème est ailleurs. Etes-vous sûre que l'élément avec l'ID désiré est bien présent lorsque vous appelez cette fonction ? Utilisez le debugger Javascript de votre navigateur ou console.log(leold) pour vous en assurer.

  7. #7
    Invité
    Invité(e)
    Par défaut
    Whaou mille mercis a vous deux, vous aviez raison
    grâce a vous un code qui marche 100% (testez )
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
     
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML><HEAD>
    <META content="text/html; charset=windows-1252" http-equiv=Content-Type>
    <META name=GENERATOR content="MSHTML 8.00.6001.19190">
    <STYLE>
    .title1 { font-family : "Felix Titling", "Times New Roman", Harrington, sans-serif; font-size : 3em; color : #aaaaaa; } 
    .title2 { font-family : "Times New Roman", Harrington, sans-serif; font-size : 2em; color : #aa1111; } 
    </STYLE>
    <script type='text/javascript'>
    var leold='';
    var agarder='';
    function lance(x)
     {
     var lid='aa'+x;
     change_class(lid); 
     }
    function change_class(Lui) 
     {
       leold = document.getElementById(Lui); 
       agarder=leold.className;
       if(agarder=='title1') agarder='title2';
        else agarder='title1';
       leold.className=agarder ; 
     }
     
    </script>
    </HEAD>
    <BODY bgColor=#ffffff>
    <DIV>
    <span class='title1' id='aa1'>Sylvie Testud en « Tchad inconnu »</span>
    <br /><span class='title2' id='aa2'>Sylvie Testud en « Tchad inconnu »</span>
     
    <br />
    <form name="LeForm" action="#">
    <input type="button" value="Change1" onclick="lance(1);"><br />
    <input type="button" value="Change2" onclick="lance(2);">
    </form>
    </DIV>
    </form>
     
    </DIV></BODY></HTML>
    Encore merci

  8. #8
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Points : 9 944
    Points
    9 944
    Par défaut
    Voilà une autre façon plus "propre" pour arriver au même résultat :
    http://jsfiddle.net/TC842/

    Sinon, pouvez-vous cliquer sur Résolu ? Merci

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

Discussions similaires

  1. Changer Une classe Fille En une Autre avec l'heritage en JPA+Hibernate
    Par bruneltouopi dans le forum Persistance des données
    Réponses: 1
    Dernier message: 15/05/2013, 19h33
  2. récupérer $_POST d'une classe dans un formulaire
    Par chris22 dans le forum Langage
    Réponses: 8
    Dernier message: 23/04/2012, 12h02
  3. Récupérer Entry / dans une classe
    Par santaflam dans le forum Tkinter
    Réponses: 1
    Dernier message: 15/09/2009, 15h53
  4. récupérer valeur dans une class
    Par members dans le forum Débuter avec Java
    Réponses: 17
    Dernier message: 30/08/2009, 14h10
  5. Réponses: 7
    Dernier message: 08/01/2005, 13h24

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