Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

Element : évènement input

Baseline Large disponibilité

Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis janvier 2020.

L'évènement input se déclenche lorsque la value d'un élément HTML <input>, <select> ou <textarea> a été modifiée directement par une action de l'utilisateur·ice (comme taper dans une zone de texte ou cocher une case).

L'évènement s'applique également aux éléments avec contenteditable activé, et à tout élément lorsque designMode est activé. Dans le cas de contenteditable et designMode, la cible de l'évènement est l'hôte d'édition. Si ces propriétés s'appliquent à plusieurs éléments, le hôte d'édition est l'ancêtre le plus proche dont le parent n'est pas éditable.

Pour les éléments <input> avec type=checkbox ou type=radio, l'évènement input doit se déclencher chaque fois qu'un·e utilisateur·ice bascule le contrôle, conformément à la spécification du standard vivant HTML (angl.). Cependant, historiquement, ce n'a pas toujours été le cas. Vérifiez la compatibilité, ou utilisez plutôt l'évènement change pour les éléments de ces types.

Pour les éléments HTML <textarea> et <input> qui acceptent une saisie de texte (type=text, type=tel, etc.), l'interface est InputEvent ; pour les autres, l'interface est Event.

L'évènement input se déclenche chaque fois que la value de l'élément change. Cela diffère de l'évènement change, qui ne se déclenche que lorsque la valeur est validée, par exemple en appuyant sur la touche Entrée ou en sélectionnant une valeur dans une liste d'options. Notez que l'évènement input ne se déclenche pas lorsque JavaScript modifie la valeur (value) d'un élément de manière programmatique.

Syntaxe

Utilisez le nom de l'évènement dans des méthodes comme addEventListener(), ou définissez une propriété de gestionnaire d'évènement.

js
addEventListener("input", (event) => { })

oninput = (event) => { }

Type d'évènement

Un objet InputEvent. Hérite de UIEvent.

Event UIEvent InputEvent

Exemples

Cet exemple enregistre la valeur chaque fois que vous modifiez la valeur de l'élément HTML <input>.

HTML

html
<input placeholder="Entrer du texte" name="nom" />
<p id="valeurs"></p>

JavaScript

js
const champ = document.querySelector("input");
const journal = document.getElementById("valeurs");

champ.addEventListener("input", updateValue);

function updateValue(e) {
  journal.textContent = e.target.value;
}

Résultat

Spécifications

Spécification
UI Events
# event-type-input
HTML
# handler-oninput

Compatibilité des navigateurs

Voir aussi