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

HTMLFormElement : événement formdata

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 ⁨septembre 2021⁩.

L'évènement formdata de l'interface HTMLFormElement se déclenche après que la liste des entrées représentant les données du formulaire a été construite. Cela se produit lors de la soumission du formulaire, mais peut aussi être déclenché par l'appel du constructeur FormData().

Cet évènement n'est pas annulable et ne se propage pas.

Syntaxe

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

js
addEventListener("formdata", (event) => { }) onformdata = (event) => { } 

Type d'évènement

Un objet FormDataEvent. Hérite de Event.

Event FormDataEvent

Propriétés de l'évènement

Hérite des propriétés de son interface parente, Event.

FormDataEvent.formData

Contient l'objet FormData représentant les données présentes dans le formulaire au moment du déclenchement de l'évènement.

Exemples

js
// récupérer la référence du formulaire const formElem = document.querySelector("form"); // gestionnaire de soumission formElem.addEventListener("submit", (e) => { // lors de la soumission du formulaire, empêcher l'action par défaut e.preventDefault(); console.log(formElem.querySelector('input[name="field1"]')); // TOTO console.log(formElem.querySelector('input[name="field2"]')); // TATA // construire un objet FormData, ce qui déclenche l'évènement formdata const formData = new FormData(formElem); // l'objet FormData est modifié par l'évènement formdata console.log(formData.get("field1")); // toto console.log(formData.get("field2")); // tata }); // gestionnaire formdata pour récupérer les données formElem.addEventListener("formdata", (e) => { console.log("évènement formdata déclenché"); // modifie les données du formulaire const formData = e.formData; // l'objet FormData est modifié par l'évènement formdata formData.set("field1", formData.get("field1").toLowerCase()); formData.set("field2", formData.get("field2").toLowerCase()); }); 

La version onformdata ressemble à ceci :

js
formElem.onformdata = (e) => { console.log("évènement formdata déclenché"); // modifie les données du formulaire const formData = e.formData; formData.set("field1", formData.get("field1").toLowerCase()); formData.set("field2", formData.get("field2").toLowerCase()); }; 

Spécifications

Specification
HTML
# event-formdata

Compatibilité des navigateurs

Voir aussi