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] Ajouter dynamiquement une zone de texte


Sujet :

JavaScript

  1. #1
    Membre régulier Avatar de fadex
    Inscrit en
    Septembre 2005
    Messages
    223
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Septembre 2005
    Messages : 223
    Points : 105
    Points
    105
    Par défaut [DOM] Ajouter dynamiquement une zone de texte
    Bonjour

    Donc je veux réaliser un truc, comme koi quand je clique sur une image (+) j’aurais une zone de texte qui s’ajoute dans une cellule <td> et quand je clique sur une image (-) elle disparetra


    Avant le clique :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <table>
    	<tr><td>Zone 1 :</td><td><input type="text" id="zone1"></td></tr>
    </table>
    Apres :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <table>
    	<tr><td>Zone 1 :</td><td><input type="text" id="zone1"></td></tr>
    	<tr><td>Zone 2 :</td><td><input type="text" id="zone2"></td></tr>
     
    </table>

    merci d'avance

  2. #2
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Bonjour,
    soit plus précis : ton exemple (ajout d'une ligne <tr>) ne correspond pas à ce que tu dis (ajout d'un input dans un <td>) ...

    A+

  3. #3
    Membre régulier Avatar de fadex
    Inscrit en
    Septembre 2005
    Messages
    223
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Septembre 2005
    Messages : 223
    Points : 105
    Points
    105
    Par défaut
    ok
    remplacer
    ajout d'un input dans un <td>
    par
    Ajouter cette portion de code <tr><td>Zone 2 :</td><td><input type="text" id="zone2"></td></tr>

  4. #4
    Membre à l'essai
    Inscrit en
    Juin 2002
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 20
    Points : 19
    Points
    19
    Par défaut
    Il faut utiliser dom,
    exemple ajoutant une balise <TD> contenant du texte dans le premier <TR> d'une table identifiée:

    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
         // reccuperation table ayant comme id "id_table"
         aTableObj = document.getElementById("Id_table");
         if (!aTableObj)
           return;
     
         // reccuperation premier TR de cette table
         aTrObject = aTableObj.getElementsByTagName("TR").item(0);
         if (!aTrObject)
            return;
     
     
         // creation de texte "blablabla"
         aText  = document.createTextNode("blablabla");
         // creation d'un TD
         aTd    = document.createElement("TD");
         // ajout de texte dans la balise TD
         aTd.appendChild(aText);
         // ajout du TD dans le TR
         aTrObject.appendChild(aTd);
    ps: j'ai un peu modifié un code plus complexe que j'utilise donc peut etre introduit des erreur

  5. #5
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    @ Onclebob > le display="block"/"none" n'est-il pas plus adapté, dans le mesure où il faut pouvoir masquer/afficher.
    La création / suppression effective va être un peu lourde, non ?

    A+

  6. #6
    Membre à l'essai
    Inscrit en
    Juin 2002
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 20
    Points : 19
    Points
    19
    Par défaut
    Ca dépend, si la zone doit être ajouter dynamiquement de facon non défini a l'avance il vaut mieux passer par DOM.
    Si le nombre est prédéfini mais qu'il faut juste montrer/cacher une zone le display:block/none est plus adapté oui.
    J'avoue que je suis rester sur le mot "dynamiquement" du titre.

  7. #7
    Membre régulier Avatar de fadex
    Inscrit en
    Septembre 2005
    Messages
    223
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Septembre 2005
    Messages : 223
    Points : 105
    Points
    105
    Par défaut
    merci

    j'ai trouvé aussi ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
       var link = document.createElement('a');
       link.setAttribute('href', 'index.html');
       link.appendChild(document.createTextNode('go home'));
       document.getElementById('content').appendChild(link);


    et pour supprimer comment je peux faire ?

  8. #8
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Ajouter cette portion de code <tr><td>Zone 2 :</td><td><input type="text" id="zone2"></td></tr>

  9. #9
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Citation Envoyé par fadex
    et pour supprimer comment je peus faire ?
    Citation Envoyé par E.Bzz
    le display="block"/"none" n'est-il pas plus adapté, dans le mesure où il faut pouvoir masquer/afficher.
    La création / suppression effective va être un peu lourde, non ?

  10. #10
    Membre régulier Avatar de fadex
    Inscrit en
    Septembre 2005
    Messages
    223
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Septembre 2005
    Messages : 223
    Points : 105
    Points
    105
    Par défaut
    onclebob à dit :
    J'avoue que je suis rester sur le mot "dynamiquement" du titre.

  11. #11
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    ... et comme le terme dynamique n'est pas du tout sujet à interprétation, effectivement, tout est limpide

    A+

  12. #12
    Membre à l'essai
    Inscrit en
    Juin 2002
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 20
    Points : 19
    Points
    19
    Par défaut
    il faut retrouver l'element que tu auras crée en Dom (en ayant pris le soin au moment de la creation de lui donner un ID par exemple) et en partant du parent (ici aTrObject) utiliser la methode: removeChild

    http://developer.mozilla.org/en/docs...eChild#1029080

    Edit: Effectivement le mot dynamique peut souvent porter a confusion dans le monde du javascript. Contenu dynamique ou animation dynamique ^^

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

Discussions similaires

  1. [AC-2007] Etat VBA ajouter dynamiquement des zone de texte (Champ)
    Par B_SKO dans le forum IHM
    Réponses: 4
    Dernier message: 23/06/2011, 23h41
  2. Ajout d'une zone de texte dynamiqument (les unes en dessous des autres)
    Par beegees dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 07/04/2010, 01h54
  3. [AC-2003] créer dynamiquement une zone de texte
    Par ralhforce dans le forum IHM
    Réponses: 1
    Dernier message: 04/05/2009, 11h07
  4. [XL-2000] [VBA] Ajout d'une Zone de texte dans un graphique
    Par popsmelove dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 09/04/2009, 18h08
  5. [DOM] Variable d'une Zone de Texte
    Par faressam dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 03/05/2007, 17h15

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