Rechercher
Saisissez au moins deux caractères, sans donnée personnelle.

    BibliothèqueArticles et FAQ Votre projetDemander un devis
    LangueFR
    Guides pratiques

    Rédiger des erreurs de formulaire qui aident à corriger

    Une erreur n’aide que si la personne sait ce qui n’a pas fonctionné et peut reprendre son action sans tout ressaisir.

    Voir la méthode

    Illustration de la préparation d’un projet web : Rédiger des erreurs de formulaire qui aident à corriger

    Décrire la correction attendue

    Associez chaque message au champ concerné et dites quelle donnée est attendue. « Adresse électronique incomplète » aide davantage qu’un code technique. N’attribuez pas à l’utilisateur une panne de serveur ou un service indisponible.

    Écrivez les règles avant la saisie lorsque c’est possible : format, longueur, pièces admises ou informations facultatives. Le guide du formulaire de contact aide à limiter les champs et clarifier les attentes.

    Le moment du contrôle fait partie du message. Un champ obligatoire encore vide à l’ouverture ne doit pas être annoncé comme fautif avant toute tentative d’envoi. Pendant la saisie d’une adresse, une valeur provisoire comme alex@ ne justifie pas nécessairement une alerte à chaque frappe. Selon le besoin, contrôlez à la sortie du champ ou après soumission ; un retour instantané peut rester utile pour une disponibilité vérifiée à distance.

    aria-invalid indique qu’une valeur a échoué à une validation ; cet attribut ne définit pas les règles et ne bloque pas lui-même l’envoi. Associez l’état au message qui explique la correction, puis réévaluez-le après correction. Ne présentez pas un simple format d’adresse accepté comme une preuve de joignabilité. Une attente de vérification ou une panne du service doit garder son propre message.

    • Champ et problème identifiables.
    • Action de correction explicite.
    • Contraintes annoncées assez tôt.

    Faites défiler le tableau horizontalement pour lire toutes les colonnes. Au clavier, placez le focus sur le tableau puis utilisez les flèches.

    Exercice fictif : choisir quand annoncer une erreur
    Moment observéRetour adapté au casContrôle à effectuer
    Première ouverture, champ obligatoire videLibellé, caractère obligatoire et aideAucun aria-invalid="true" prématuré
    Saisie inachevée d’une adresseLaisser la personne terminer selon la stratégie retenueÉviter les alertes répétées pour un état provisoire
    Envoi tenté avec valeur refuséeErreur explicite associée au champaria-invalid, message accessible et correction possible

    Rendre le retour perceptible

    Après soumission, affichez un résumé près du début du formulaire et un message auprès de chaque champ fautif. Placez le focus de manière prévisible et reliez chaque champ à son erreur pour les technologies d’assistance. La couleur seule ne suffit pas.

    Le tutoriel W3C sur les notifications donne des exemples de messages locaux et globaux. Testez clavier, lecteur d’écran, zoom et petit écran.

    Exemple fictif : un formulaire comporte les champs nom, adresse électronique et message. Le nom manque et l’adresse est incomplète ; le message est déjà valide. Le premier contrôle doit donc signaler 2 erreurs, pas 3. Après correction du seul nom, il reste 1 erreur ; après correction de l’adresse, il n’en reste aucune. À chaque étape, comparez les erreurs du résumé, les messages locaux et les valeurs conservées, sans obliger à retaper le message.

    Dans ce contrat de test, chaque lien du résumé mène au champ concerné ; aria-describedby relie l’explication au contrôle et aria-invalid indique son état invalide. Après correction, retirez l’association à l’erreur devenue obsolète tout en conservant les aides encore utiles. Une panne du service après validation ne crée pas une nouvelle erreur de saisie et ne prouve aucun enregistrement. Le tableau distingue donc les 0 erreurs de champ d’une réussite réellement confirmée.

    • Résumé et messages proches des champs.
    • Association accessible des erreurs.
    • Focus et contraste testés.

    Faites défiler le tableau horizontalement pour lire toutes les colonnes. Au clavier, placez le focus sur le tableau puis utilisez les flèches.

    Deux erreurs corrigées progressivement : exemple de recette fictif
    Étape du testErreurs de champ restantesRésultat attendu
    Premier contrôle2 : nom et adresse électroniqueMessage conservé ; deux erreurs accessibles
    Nom corrigé uniquement1 : adresse électroniqueErreur du nom retirée ; autre erreur maintenue
    Adresse corrigée également0Champs valides ; enregistrement encore à vérifier
    Service indisponible après validation0 ; incident de service distinctAucune fausse confirmation ; reprise expliquée
    • W3C WAI : User Notification

      W3C WAI, consulté le 22 octobre 2026 : notifications de formulaire. Les champs et étapes constituent un cas pédagogique fictif.

    Préserver la saisie et l’intention

    Conservez les valeurs déjà saisies après une erreur, sauf donnée sensible qui ne doit pas être réaffichée. Un formulaire long doit permettre de reprendre au bon endroit. Une pièce refusée exige une explication de format ou de taille.

    Distinguez erreur de validation, délai réseau et double envoi. Évitez que des clics répétés créent plusieurs demandes ou commandes. La confirmation doit dire clairement si l’action a réellement été enregistrée.

    • Champs valides conservés.
    • Échecs réseau traités sans ambiguïté.
    • Double soumission contrôlée.

    Tester des cas réels

    Essayez champ vide, caractère accentué, adresse mal saisie, fichier trop lourd, session expirée et serveur indisponible. Demandez à une personne extérieure de corriger le formulaire sans aide et observez les hésitations.

    Après correction, contrôlez l’email ou l’étape suivante, pas seulement le message à l’écran. Les contenus de confirmation et d’erreur doivent aussi être revus dans chaque langue publiée.

    • Cas d’erreur représentatifs couverts.
    • Parcours complet vérifié.
    • Messages traduits et relus.

    Préserver la saisie après erreur

    Stylo, formulaire vierge et grille de calendrier sur un bureau
    Corriger un champ sans effacer les données déjà saisies.

    Cas proposé : une date invalide provoque l’effacement des autres champs. Le message précise le défaut mais oblige la personne à recommencer toute sa demande.

    Déclenchez les erreurs attendues avec des valeurs fictives. Vérifiez conservation, association du message au champ et reprise ; la correction doit pouvoir se faire sans deviner une règle cachée.

    • Déclencher une erreur attendue
    • Vérifier les données conservées
    • Terminer le parcours corrigé

    Distinguer une correction d’un recommencement complet

    Le rejet d’un champ ne doit pas effacer inutilement les réponses valides ailleurs dans le processus. Testez la réponse réelle du serveur puis revenez à l’étape précédente : conserver la saisie uniquement dans le navigateur ne suffit pas si une erreur serveur renvoie un formulaire vide.

    Faites défiler le tableau horizontalement pour lire toutes les colonnes. Au clavier, placez le focus sur le tableau puis utilisez les flèches.

    Distinguer une correction d’un recommencement complet
    SituationRésultat attenduLimite à vérifier
    Champ invalideIdentifier le champ et expliquer la correction.Conserver les autres réponses valides non sensibles.
    Processus expiréExpliquer ce qui peut être repris et ce qui doit être vérifié de nouveau.Ne pas exposer une saisie précédente à une autre session.
    Retour puis progressionCorriger une valeur et relire le récapitulatif actualisé.Vérifier que les anciennes et nouvelles valeurs ne sont pas mélangées.
    • W3C WAI · WCAG 3.3.7

      Lire la portée et les exceptions du critère ; ce scénario est une application pratique, pas un certificat de conformité.

    Documents de référence

    Contenu mis à jour le

    Repères documentaires pour ce sujet

    Repères documentaires pour ce sujet
    RéférenceValeur ou syntaxePortée du repère
    WCAG 2.2 · 1.4.10
    320 CSS pxContenu vertical sans défilement dans deux dimensions ; exceptions pour les contenus intrinsèquement bidimensionnels.
    WCAG 2.2 · 2.5.8
    24 × 24 CSS pxUne cible plus petite peut satisfaire le critère grâce à l’espacement ; d’autres exceptions existent.
    WCAG 2.2 · 3.3.7
    A · same processDans un même processus, une information déjà fournie doit être préremplie ou disponible à la sélection, sauf exceptions du critère. L’autocomplétion du navigateur seule ne suffit pas ; le site doit proposer la donnée déjà reçue ou éviter de la redemander.

    Les dates indiquent la consultation des références. Ces repères ne constituent ni un audit du site ni une déclaration globale de conformité.

    Matrice de recette à adapter au projet

    Ces contrôles proposés utilisent des cas fictifs. Décidez du comportement attendu avec l’équipe, notez le résultat et attribuez les écarts non résolus avant publication.

    Faites défiler le tableau horizontalement pour lire toutes les colonnes. Au clavier, placez le focus sur le tableau puis utilisez les flèches.

    Cas de test, résultats attendus et preuves utiles
    CasRésultat attenduPreuve à conserver
    Deux champs sont invalides après soumission.Chaque erreur est associée à son champ et le résumé permet de les retrouver.Deux valeurs invalides, liens du résumé, associations aux champs et valeurs conservées.
    Une erreur disparaît après correction d’un seul champ.Les autres erreurs restent indiquées et la saisie corrigée n’est pas annulée.Valeurs avant et après et ensemble des erreurs encore actives.

    Questions fréquentes

    Comment vérifier qu’un message d’erreur permet réellement de corriger ?

    Provoquez une erreur prévue, retrouvez le champ au clavier et appliquez uniquement la consigne affichée. Le message doit identifier le problème et une correction possible, être relié au champ et rester compréhensible sans la couleur. Vérifiez que les autres saisies valides sont conservées et qu’un problème de service ne soit pas présenté comme une faute de l’utilisateur.

    Quel message afficher si l’envoi échoue alors que les champs sont valides ?

    Distinguer une saisie invalide d’un service indisponible ou d’un résultat encore inconnu après interruption. Ne pas demander de corriger un champ qui a été accepté. Conserver les valeurs utiles et expliquer la reprise prévue. Si le serveur a pu enregistrer la demande avant la coupure, vérifier son résultat selon le contrat du service avant de proposer un nouvel envoi comme s’il était sans effet supplémentaire.