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 :

Inclure une balise dans une autre balise


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 25
    Par défaut Inclure une balise dans une autre balise
    Hello !

    Voilà je commence un peu à toucher au javascript et je suis confronter à un problème.

    Mon script ajoute une ligne à un tableau quand on clique sur un bouton. La ligne est composée de 2 cellules, dont la dernière contient une 'div' qui contient elle même un 'input'.

    En HTML, ca donne ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <tr>
                <td class="tabcells-left">Prix :</td>
                <td class="tabcells-right"><div>&euro;
                        <input type="text" name="" value="">
                </div></td>
              </tr>
    Pour la 1ère cellule, pas de souci en javascript. Pour la deuxième, j'ai fait ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    	  /*Création input*/
        var newInput2 = document.createElement('input');
        newInput2.setAttribute("name","nouveau");
        newInput2.setAttribute("type","text");
    	  /*Création div*/
    	var div = document.createElement('div');
    	div.setAttribute("class","euro");
        div.appendChild(document.createTextNode("€" + newInput2));
    	  /*Création td*/
        var newData2 = document.createElement('td');
        newData2.setAttribute("class","tabcells-right");
    	newData2.appendChild(div);
    Mais la cellule me ressort ça : €[object HTMLInputElement]

    J'ai essayé avec différentes méthodes, aucune à marchée.

    Si vous avez une idée, je suis preneur !!!

    A+
    Tom

  2. #2
    Expert éminent

    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
    Par défaut
    Bonjour,
    au moment où tu y fais référence, newInput2 n'existe pas (tu ne l'as pas "appendé" dans un conteneur).
    De plus, si c'est sa value que tu veux afficher après le "€", tu ne l'as pas définie ...

    A+

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 25
    Par défaut
    Non non, ce n'est pas sa valeur que je veux afficher, mais je veux que l'utilisateur rentre une valeur.

    Sinon, par "appendé" tu entends :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    div.appendChild(newInput2);
    ???

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 25
    Par défaut
    Ok, c'est bon, j'ai réussi.

    En fait, j'avais un retour à la ligne donc je pensais que l'input n'était pas inclut sans le div, mais c'était simplement que le div était trop grand pour le TD et qu'il y avait donc un retour à la ligne.

    Bref, j'ai donc refait ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
        div.appendChild(document.createTextNode("€"));
    	div.appendChild(newInput2);
    et ça marche...

    Merci quand même E.Buzz

  5. #5
    Expert éminent

    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
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    	div.appendChild(newInput2);
    C'est ça "appendé" ...

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 03/12/2014, 12h46
  2. Réponses: 7
    Dernier message: 25/03/2011, 10h52
  3. Réponses: 4
    Dernier message: 15/10/2009, 13h33
  4. [XL-2007] Afficher une checkbox dans une feuille si une checkbox d'une autre feuille est cochée
    Par JessieCoutas dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 18/08/2009, 13h35
  5. Recherche une valeur d'une cellule dans une colonne d'une autre feuille
    Par kourria dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/06/2007, 13h48

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