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 :

[DOM] help sur Dom et suppression de Child


Sujet :

JavaScript

  1. #1
    Membre actif Avatar de grinder59
    Inscrit en
    Septembre 2005
    Messages
    707
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 707
    Points : 215
    Points
    215
    Par défaut [DOM] help sur Dom et suppression de Child
    Salut,

    Je dispose d'un tableau et et dans chaque case je place un fonction JS qui permet, au premier clic, de mettre un texte ou, au second clic, de supprimer le texte que je viens de mettre. Tout cela sans rechargement de page. Voici le code qui permet d'ajouter le texte :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    t.appendChild(document.createTextNode('mon texte'));
    t étant la case sur laquelle je viens de cliquer

    et voici la code permettant de supprimer le texte :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    var nb = t.firstChild.nodeValue.length;
    t.firstChild.deleteData(0,nb);
    Fonctionnement :
    1. je clique : le texte s'affiche
    2. je reclique (même case) : le texte disparait
    3. je re reclique (même case) : le texte réapparait
    4. je re re reclique (même case) : le texte ne disparait pas


    Je pense que c'est pas grand chose, mais comme je ne maitrise pas bien le DOM, si quelqu'un a une idée, je suis preneur.

    Merci

  2. #2
    Invité
    Invité(e)
    Par défaut


    ta fonction d'ajout crée à chaque fois un nouveau noeud, alors que ta fonction de retrait n'enleve pas un noeud mais de données du dernier noeud. il faut harmoniser :
    -> soit tes 2 fonctions travailllent sur des noeuds (appendChild et removeChild)
    -> soit tes 2 fonctions travaillent sur les données d'un noeud existant (appendData et removeData)

    voilou

  3. #3
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    en clair :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    t.removeChild(t.firstChild);
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  4. #4
    Membre actif Avatar de grinder59
    Inscrit en
    Septembre 2005
    Messages
    707
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 707
    Points : 215
    Points
    215
    Par défaut
    en effet ça fonctionne. Je pensais que le DeleteData permettait de supprimer le noeud en supprimant le texte... n'importe quoi moi...


    Merci en tous cas...

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

Discussions similaires

  1. [DOM XML] Dom XML sur php5.1
    Par Kioo dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 04/12/2007, 12h18
  2. [DOM] Erreur sur createElement()
    Par Klimium dans le forum Bibliothèques et frameworks
    Réponses: 13
    Dernier message: 09/06/2007, 08h32
  3. [DOM] Erreur sur appendChild
    Par helter_skelter dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 28/03/2007, 17h36
  4. [DOM] removeChild supprime t'il les "sous Child" ?
    Par dymezac dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 08/12/2006, 12h04
  5. [DOM] agir sur le DOM au changement d'une chaîne dans un FORM
    Par boteha dans le forum Général JavaScript
    Réponses: 14
    Dernier message: 30/11/2005, 14h39

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