Bouton d’envoi du formulaire
Silktide examine les formulaires de vos pages et signale ceux qui contiennent des champs à renseigner mais aucun bouton d’envoi. Sans ce bouton, certains visiteurs n’ont aucun moyen d’envoyer le formulaire, et d’autres ne peuvent pas prévoir quand une action se produira.
Pourquoi c’est important
Un bouton d’envoi visible indique deux choses aux visiteurs : comment envoyer le formulaire, et que rien ne se passe tant qu’ils ne l’ont pas décidé. Certaines personnes utilisant une ne peuvent envoyer un formulaire qu’en activant un bouton – la touche Entrée dans un champ n’est pas accessible à tout le monde. Et un formulaire sans bouton envoie souvent automatiquement des données au fur et à mesure que le visiteur saisit du texte ou modifie une sélection : ce changement de contexte inattendu peut désorienter les utilisateurs de et les personnes ayant des troubles cognitifs, qui se retrouvent soudain sur une autre page en plein milieu d’une tâche.
Il s’agit du critère de succès 3.2.2 (Lors de la saisie) des , une exigence de — faisant partie du niveau de conformité le plus élémentaire.
Comment y remédier
Ajoutez un bouton d’envoi à chaque formulaire signalé, avec l’attribut type="submit" défini explicitement :
<!-- Problème : aucun moyen d’envoyer le formulaire volontairement -->
<form action="\/search">
<input type="text" name="q">
</form>
<!-- Correction : un bouton d’envoi explicite -->
<form action="\/search">
<input type="text" name="q">
<button type="submit">Rechercher</button>
</form>
Si le formulaire ne doit réellement rien envoyer — par exemple, un filtre qui met à jour les résultats en direct et qui annonce son comportement — vous pouvez le signalement ou exclure l’élément du contrôle.
Comment Silktide teste cela
- Rechercher chaque élément
<form>de la page, en ignorant ceux que vous avez exclus du contrôle. - Ignorer les formulaires sans champs utilisables — c’est-à-dire ne contenant aucun champ de saisie, zone de texte, liste déroulante ou bouton visible au chargement de la page. Cela permet d’écarter les formulaires de suivi et les formulaires invisibles englobant la page que certaines plateformes génèrent, qui seraient sinon des faux positifs.
- Signaler chaque formulaire restant qui ne contient aucun élément avec
type="submit".
Dépannage
Mon formulaire a un bouton mais a tout de même été signalé
Silktide recherche un type="submit" explicite. Un <button> sans attribut type envoie bien le formulaire dans la plupart des navigateurs, mais il n’est pas reconnu par ce contrôle — et ajouter type="submit" est de toute façon une bonne pratique, car cela rend le comportement du bouton sans ambiguïté. Les boutons avec type="button" n’envoient jamais le formulaire.
Le formulaire est révélé après une interaction
Les champs sont évalués au premier chargement de la page. Un formulaire initialement caché et révélé plus tard, par exemple dans un menu popup, peut ne pas être testé ; réussir ce contrôle ne garantit donc pas que tous les formulaires de la page possèdent un bouton.