HTMLTableSectionElement : méthode deleteRow()
Baseline
Widely available
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
La méthode deleteRow() de l'interface HTMLTableSectionElement supprime une ligne spécifique (<tr>) d'une <section> donnée.
Syntaxe
deleteRow(index)
Paramètres
index-
indexest un entier représentant la ligne à supprimer. Cependant, l'index spécial-1peut être utilisé pour supprimer la toute dernière ligne de la section.
Valeur de retour
Aucune (undefined).
Exceptions
IndexSizeErrorDOMException-
Levée si
indexest supérieur ou égal au nombre de lignes disponibles ou est une valeur négative autre que-1.
Exemples
Dans cet exemple, deux boutons permettent d'ajouter et de supprimer des lignes de la section corps du tableau ; il met également à jour un élément HTML <output> avec le nombre de lignes actuellement dans le tableau.
HTML
<table>
<thead>
<tr>
<th>Col 1</th>
<th>Col 2</th>
<th>Col 3</th>
</tr>
</thead>
<tbody>
<tr>
<td>X</td>
<td>Y</td>
<td>Z</td>
</tr>
</tbody>
</table>
<button id="add">Ajouter une ligne</button>
<button id="remove">Supprimer la dernière ligne</button>
<div>Le corps de ce tableau contient <output>1</output> ligne(s).</div>
JavaScript
// Récupère les éléments d'interface pertinents
const bodySection = document.querySelectorAll("tbody")[0];
const rows = bodySection.rows; // La collection est dynamique, donc toujours à jour
const rowNumberDisplay = document.querySelectorAll("output")[0];
const addButton = document.getElementById("add");
const removeButton = document.getElementById("remove");
function updateRowNumber() {
rowNumberDisplay.textContent = rows.length;
}
addButton.addEventListener("click", () => {
// Ajoute une nouvelle ligne à la fin du corps
const newRow = bodySection.insertRow();
// Ajoute des cellules dans la nouvelle ligne
["A", "B", "C"].forEach(
(elt) => (newRow.insertCell().textContent = `${elt}${rows.length}`),
);
// Met à jour le compteur de lignes
updateRowNumber();
});
removeButton.addEventListener("click", () => {
// Supprime la ligne du corps
bodySection.deleteRow(-1);
// Met à jour le compteur de lignes
updateRowNumber();
});
Résultat
Spécifications
| Specification |
|---|
| HTML> # dom-tbody-deleterow> |
Compatibilité des navigateurs
Voir aussi
- La méthode
HTMLTableElement.deleteRow()