Méthode appendChild

La méthode appendChild permet d'insérer à la fin d'un élément un autre élément. Elle est le plus souvent utilisée après la création d'un élément avec createElement.

Syntaxe

javascriptparent.appendChild(élément);

Exemple

Créeons un paragraphe, définissons son texte et plaçons-le sur la page à la fin du bloc #parent :

html<div id="parent">
  <p>1</p>
  <p>2</p>
  <p>3</p>
</div>
javascriptlet parent = document.querySelector('#parent');

let p = document.createElement('p');
p.textContent = '!';

parent.appendChild(p);

Résultat de l'exécution du code :

html<div id="parent">
  <p>1</p>
  <p>2</p>
  <p>3</p>
  <p>!</p>
</div>

Exemple

Soit un ul. Plaçons-y 9 balises li, en faisant de leur texte des numéros d'ordre :

html<ul id="parent"></ul>
javascriptlet parent = document.querySelector('#parent');

for (let i = 1; i <= 9; i++) {
  let li = document.createElement('li');
  li.textContent = i;
  parent.appendChild(li);
}

Résultat de l'exécution du code :

html<ul id="parent">
  <li>1</li>
  <li>2</li>
  <li>3</li>
  <li>4</li>
  <li>5</li>
  <li>6</li>
  <li>7</li>
  <li>8</li>
  <li>9</li>
</ul>

Exemple

Remplissons un tableau avec des tr et des td :

html<table id="table"></table>
javascriptlet parent = document.querySelector('#parent');

for (let i = 1; i <= 3; i++) {
  let tr = document.createElement('tr'); // créons une tr
  
  // Remplissons la tr avec des td :
  for (let j = 1; j <= 3; j++) {
    let td = document.createElement('td'); // créons une td
    td.textContent = j; // écrivons son texte
    
    tr.appendChild(td); // ajoutons la td créée à la fin de la tr
  }
  
  table.appendChild(tr); // ajoutons la tr créée à la fin du tableau
}

Résultat de l'exécution du code :

html<table id="table">
  <tr>
    <td>1</td>
    <td>2</td>
    <td>3</td>
  </tr>
  <tr>
    <td>1</td>
    <td>2</td>
    <td>3</td>
  </tr>
  <tr>
    <td>1</td>
    <td>2</td>
    <td>3</td>
  </tr>
</table>

Voir aussi

  • la méthode append,
    qui insère des éléments à la fin
  • la méthode insertBefore,
    qui insère un élément avant un élément
  • la méthode insertAdjacentElement,
    qui insère un élément à un emplacement donné
  • la méthode insertAdjacentHTML,
    qui insère des balises à un emplacement donné