Get to know MDN better
Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.
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.
L'interface HTMLFormElement représente un élément HTML <form> du DOM. Elle permet d'accéder — et, dans certains cas, de modifier — certains aspects du formulaire, ainsi que d'accéder à ses éléments composants.
EventTarget Node Element HTMLElement HTMLFormElementCette interface hérite aussi des propriétés de son parent HTMLElement.
HTMLFormElement.acceptCharsetUne chaîne de caractères reflétant la valeur de l'attribut HTML accept-charset de ce formulaire.
HTMLFormElement.actionUne chaîne de caractères reflétant la valeur de l'attribut HTML action de ce formulaire, contenant l'URI d'un programme qui traite les informations soumises par le formulaire.
HTMLFormElement.autocompleteUne chaîne de caractères reflétant la valeur de l'attribut HTML autocomplete de ce formulaire, indiquant si les contrôles de ce formulaire peuvent voir leurs valeurs renseignées automatiquement par le navigateur.
HTMLFormElement.encoding ou HTMLFormElement.enctypeUne chaîne de caractères reflétant la valeur de l'attribut HTML enctype de ce formulaire, indiquant le type de contenu utilisé pour transmettre le formulaire au serveur. Seules des valeurs définies peuvent être utilisées. Les deux propriétés sont synonymes.
HTMLFormElement.elements Lecture seuleUn objet HTMLFormControlsCollection regroupant tous les contrôles de formulaire appartenant à cet élément de formulaire.
HTMLFormElement.length Lecture seuleUn nombre long reflétant le nombre de contrôles dans le formulaire.
HTMLFormElement.nameUne chaîne de caractères reflétant la valeur de l'attribut HTML name du formulaire, contenant le nom du formulaire.
HTMLFormElement.noValidateUne valeur booléenne reflétant la valeur de l'attribut HTML novalidate de ce formulaire, indiquant si le formulaire ne doit pas être validé.
HTMLFormElement.methodUne chaîne de caractères reflétant la valeur de l'attribut HTML method du formulaire, indiquant la méthode HTTP utilisée pour soumettre le formulaire. Seules des valeurs définies peuvent être utilisées.
HTMLFormElement.relUne chaîne de caractères reflétant la valeur de l'attribut HTML rel du formulaire, indiquant les types de liens que le formulaire crée, sous forme d'une liste de valeurs séparées par des espaces.
HTMLFormElement.relList Lecture seuleUn objet DOMTokenList reflétant l'attribut HTML rel sous la forme d'une liste de jetons.
HTMLFormElement.targetUne chaîne de caractères reflétant la valeur de l'attribut HTML target du formulaire, indiquant où afficher les résultats reçus lors de l'envoi du formulaire.
Les champs nommés sont ajoutés à leur instance de formulaire propriétaire en tant que propriétés et peuvent écraser les propriétés natives si elles portent le même nom (par exemple, un formulaire avec une entrée nommée action verra sa propriété action retourner cette entrée plutôt que la valeur de l'attribut HTML action).
Cette interface hérite aussi des méthodes de son parent HTMLElement.
checkValidity()Retourne true si les contrôles enfants de l'élément sont soumis à la validation des contraintes et respectent ces contraintes ; retourne false si certains contrôles ne les respectent pas. Pour chaque contrôle invalide, un évènement annulable invalid est déclenché ; ces contrôles sont considérés invalides si l'évènement n'est pas annulé. C'est au développeur·euse de décider de la conduite à tenir lorsque la méthode retourne false.
reportValidity()Retourne true si les contrôles enfants de l'élément respectent leurs contraintes de validation. Lorsque false est retourné, des évènements annulables invalid sont déclenchés pour chaque contrôle invalide et les problèmes de validation sont signalés à l'utilisateur·ice.
requestSubmit()Demande que le formulaire soit soumis en utilisant le bouton d'envoi indiqué et sa configuration associée.
reset()Redéfinit le formulaire à son état initial.
submit()Soumet le formulaire au serveur.
Écoutez ces évènements en utilisant addEventListener(), ou en assignant un écouteur d'événement à la propriété oneventname de cette interface.
formdataL'évènement formdata est déclenché après la construction de la liste d'entrées représentant les données du formulaire.
resetL'évènement reset est déclenché lorsque le formulaire est réinitialisé.
submitL'évènement submit est déclenché lorsque le formulaire est soumis.
Pour obtenir un objet HTMLFormElement, vous pouvez utiliser un sélecteur CSS avec querySelector() ou vous pouvez obtenir une liste de tous les formulaires du document utilisant sa propriété forms.
Document.forms retourne un tableau des objets HTMLFormElement listant chacun des formulaires de la page. Vous pouvez utiliser alors l'une des syntaxes suivantes pour obtenir un formulaire individuel :
document.forms[index]retourne le formulaire à l'index défini dans le tableau du formulaire.
document.forms[id]retourne le formulaire dont l'ID (identifiant) est id .
document.forms[name]retourne le formulaire dont la valeur d'attribut de name est name.
Vous pouvez accéder à la liste des éléments contenant des données du formulaire en examinant la propriété elements du formulaire. Celle-ci retourne un HTMLFormControlsCollection listant tous les éléments d'entrée de données utilisateur·ice du formulaire, aussi bien ceux qui sont des descendants du <form> que ceux qui sont déclarés membres du formulaire via leur attribut form.
Vous pouvez aussi obtenir un élément du formulaire en utilisant son attribut name comme clé du form, mais utiliser elements est une meilleure approche — il contient seulement les éléments du formulaire et ne peut pas être confondu avec d'autres attributs du form.
Certains noms peuvent interférer avec l'accès en JavaScript aux propriétés et aux éléments du formulaire.
Par exemple :
Pour éviter de tels problèmes liés aux noms d'éléments :
Si vous n'utilisez pas JavaScript, cela ne posera pas de problème.
Les éléments qui sont inclus par HTMLFormElement.elements et HTMLFormElement.length sont :
Aucun autre élément n'est inclus dans la liste retournée par elements, ce qui en fait un excellent moyen d'accéder aux éléments les plus importants lors du traitement des formulaires.
Crée un nouvel élément de formulaire, modifie ses attributs et l'envoie :
Extraire des informations d'un élément <form> et définir certains de ses attributs :
Envoi d'un formulaire dans une nouvelle fenêtre :
| HTML # htmlformelement |
Activez JavaScript pour afficher ce tableau de compatibilité des navigateurs.
Cette page a été modifiée le 7 déc. 2025 par les contributeur·ice·s du MDN.
Votre modèle pour un internet meilleur.
Visitez la société mère à but non lucratif de Mozilla Corporation, la Fondation Mozilla.
Certaines parties de ce contenu sont protégées par le droit d'auteur ©1998—2026 des contributeurs individuels de mozilla.org. Contenu disponible sous une licence Creative Commons.