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 :

Ins�rer plusieurs �l�ments dans une m�me <div>


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    �tudiant
    Inscrit en
    D�cembre 2018
    Messages
    2
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activit� : �tudiant

    Informations forums :
    Inscription : D�cembre 2018
    Messages : 2
    Par d�faut Ins�rer plusieurs �l�ments dans une m�me <div>
    Bonjour � tous, je me demandais si il �tait possible d�envoyer gr�ce � .innerHTML par exemple plusieurs �l�ments dans une m�me balise (<div> ou autre...)

    exemple :

    le HTML

    Code HTML : S�lectionner tout - Visualiser dans une fen�tre � part
     <div id=“Mon_id” ></div>

    le JS :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
     for (var i=1; i<5; i++) {
         document.getElementById(“Mon_id”).innerHTML=“Blabla”
    }


    Dans mon cas je cherche � ins�rer des input radio mais cela ne change pas ma question...

    merci d�avance !

  2. #2
    Invit�
    Invit�(e)
    Par d�faut
    Bonjour,
    Ce n'est pas en posant une question "vague" que tu auras une r�ponse pr�cise.

    1- D�j�, ce n'est pas � ni �, mais ".

    Code html : S�lectionner tout - Visualiser dans une fen�tre � part
    <div id="Mon_id"></div>
    Code JavaScript : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    "use strict";
    const Mon_id = document.getElementById("Mon_id");
    for (var i=1; i<5; i++) {
         Mon_id.innerHTML += "Blabla " + i + "<br/>";
    }
    On obtient ici :
    Code html : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    <div id="Mon_id">
       Blabla 1<br>Blabla 2<br>Blabla 3<br>Blabla 4<br>
    </div>
    2-
    Citation Envoy� par Uncle scrooge Voir le message
    ... mais cela ne change pas ma question...
    Ben si, justement...
    Car alors on n'utilise pas innerHTML, mais plut�t des document.createElement() et .appendChild().

    Exemple :
    Code JavaScript : 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
    "use strict";
    const Mon_id = document.getElementById("Mon_id");
     
    // Solution 1 : création p label input : createElement + appendChild
    let p = document.createElement("p");
    let label = document.createElement("label");
    label.textContent = "Mon input : ";
    let input = document.createElement("input");
    input.setAttribute("type","text");
    input.setAttribute("name","input1");
    input.setAttribute("value","");
    input.setAttribute("placeholder","entrez une valeur");
    // insertion dans le DOM
    Mon_id.appendChild(p);
    p.appendChild(label);
    p.appendChild(input);
    On obtient ici :
    Code html : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    <div id="Mon_id">
       <p><label>Mon input : </label><input type="text" name="input1" value="" placeholder="entrez une valeur"></p>
    </div>
    Derni�re modification par Invit� ; 27/02/2020 � 18h52.

  3. #3
    Candidat au Club
    Homme Profil pro
    �tudiant
    Inscrit en
    D�cembre 2018
    Messages
    2
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activit� : �tudiant

    Informations forums :
    Inscription : D�cembre 2018
    Messages : 2
    Par d�faut
    Merci beaucoup, pour ce qui est des quotes excusez moi je n�avais pas trouv� les bons j�avais essay� de trouver mieux que les guillemets fran�ais... et merci de votre aide, Je ne connaissait pas les .appendChild() qui sont en effet tr�s utiles.

    Cependant, en poursuivant de mon c�t� les recherches, j�avais trouv� le .insertAdjacentHTML() qui m�a r�solu le probl�me. Apr�s, j�ignore si c�est une bonne id�e selon vous pour des balises <input>...

  4. #4
    Invit�
    Invit�(e)
    Par d�faut
    element.insertAdjacentHTML() est une autre m�thode, tout aussi valable.
    insertAdjacentHTML() analyse le texte sp�cifi� en tant que HTML ou XML et ins�re les noeuds r�sultants dans le DOM � la position sp�cifi�e.
    �a �vite de cr�er et ins�rer (.createElement + .appendChild) chaque �l�ment (p, label, input,...) : il suffit d'�crire le code sous sa forme HTML.
    .insertAdjacentHTML() se charge du reste.

    exemple : https://codepen.io/jreaux62/pen/LYVybGW
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    "use strict";
    const Mon_id = document.getElementById("Mon_id");
     
    // Solution 2 : création p label input : insertAdjacentHTML
    let p_input_html = '<p><label>Mon input 2 : </label><input type="text" nmae="input2"value="" placeholder="entrez une valeur 2"></p>';
    Mon_id.insertAdjacentHTML( 'beforeend', p_input_html );
    N.B. Il est toujours bon de savoir qu'il existe diff�rentes solutions...
    Derni�re modification par Invit� ; 27/02/2020 � 19h02.

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Max pour plusieurs �l�ments dans une m�me table
    Par Schwy dans le forum Requ�tes
    R�ponses: 12
    Dernier message: 07/10/2013, 17h17
  2. [MySQL] ins�rer plusieurs lignes dans une m�me table
    Par brahda dans le forum PHP & Base de donn�es
    R�ponses: 3
    Dernier message: 20/05/2011, 15h56
  3. [Dojo] Ins�rer plusieurs DataGrid dans une m�me page
    Par Lnhab dans le forum Biblioth�ques & Frameworks
    R�ponses: 3
    Dernier message: 06/10/2009, 00h21
  4. R�ponses: 5
    Dernier message: 11/06/2004, 15h27

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