You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs: pas 3.3.3 Foutsuggestie aan op de schrijfwijzer
Summary begint nu positief, intro begint met gewenste ervaring,
beveiligingsuitzondering minder prominent, en "detecteren" → "herkennen".
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@@ -30,10 +40,193 @@ import Summary from "./summaries/_3.3.3-summary.md";
30
40
{"WCAG-succescriterium 3.3.3 Foutsuggestie"}
31
41
</WcagHeadingGroup>
32
42
33
-
## Uitleg
34
-
35
43
<Summary />
36
44
45
+
Als een formulier weet welk antwoord het verwacht, biedt het bij een fout een suggestie aan. Vult iemand "32 januari" in als datum? Dan meldt het formulier niet alleen "Datum is niet geldig" maar stelt het voor: "Bedoelde je 31 januari of 1 februari?"
46
+
47
+
Hoe specifieker de suggestie, hoe sneller de bezoeker het formulier correct kan invullen. Bij een wachtwoordveld mag je suggereren welke eis niet is gehaald, zolang je geen gevoelige informatie over geldige wachtwoorden onthult. Vermelden dat een wachtwoord minimaal een bepaald aantal tekens moet hebben mag, want die informatie staat ook op het aanmeldformulier.
48
+
49
+
## Veelgemaakte fouten
50
+
51
+
### Foutmelding zonder suggestie terwijl het verwachte formaat bekend is
52
+
53
+
Het formulier weet welk formaat het verwacht, maar deelt dat niet met de bezoeker. Een datumveld verwacht "dd-mm-jjjj" maar meldt alleen "Ongeldige datum". Een telefoonnummerveld verwacht tien cijfers maar meldt alleen "Ongeldig telefoonnummer". De bezoeker moet raden wat er precies wordt verwacht.
54
+
55
+
**Hoe te testen:** vul een veld in met een waarde in het verkeerde formaat. Beschrijft de foutmelding welk formaat wordt verwacht? Bevat de melding een voorbeeld?
56
+
57
+
<Guidelineappearance="dont"title="Foutmelding zonder het verwachte formaat.">
Datum is niet in het juiste formaat. Gebruik dd-mm-jjjj, bijvoorbeeld 15-03-1990
73
+
</p>
74
+
```
75
+
</Guideline>
76
+
77
+
**Wie kan dit oplossen:** een developer voegt het verwachte formaat en een voorbeeld toe aan de foutmelding.
78
+
79
+
### Postcode wordt afgekeurd omdat het formaat afwijkt
80
+
81
+
Een Nederlandse postcode bestaat uit vier cijfers en twee letters. Bezoekers schrijven die op twee manieren: "3512JE" en "3512 JE". Als het formulier alleen het formaat zonder spatie accepteert, krijgt de bezoeker een foutmelding terwijl de postcode correct is. Accepteer beide varianten, of bied een suggestie aan met het verwachte formaat.
82
+
83
+
**Hoe te testen:** vul een postcode in met en zonder spatie. Worden beide geaccepteerd? Als niet, biedt de foutmelding dan het verwachte formaat aan?
84
+
85
+
<Guidelineappearance="dont"title="Postcode afgekeurd zonder suggestie.">
Postcode is niet in het juiste formaat. Gebruik het formaat zonder spatie, bijvoorbeeld 3512JE
109
+
</p>
110
+
```
111
+
</Guideline>
112
+
113
+
**Wie kan dit oplossen:** een developer normaliseert de invoer zodat beide schrijfwijzen worden geaccepteerd, of voegt het verwachte formaat toe aan het label boven het veld en de foutmelding.
114
+
115
+
### Datum buiten bereik zonder te melden welke datums geldig zijn
116
+
117
+
Een datumveld accepteert alleen datums binnen een bepaald bereik, maar meldt niet welk bereik geldig is. De bezoeker vult een datum in die te ver in het verleden of in de toekomst ligt en krijgt alleen "Datum buiten bereik". Vermeld de grenzen zodat de bezoeker direct de juiste datum kan kiezen.
118
+
119
+
**Hoe te testen:** vul een datum in die buiten het geldige bereik valt. Vermeldt de foutmelding het geldige bereik?
120
+
121
+
<Guidelineappearance="dont"title="Geen vermelding van het geldige bereik.">
Kies een datum tussen 1 april 2026 en 30 juni 2026
137
+
</p>
138
+
```
139
+
</Guideline>
140
+
141
+
**Wie kan dit oplossen:** een developer voegt de grenzen van het geldige bereik toe aan de foutmelding.
142
+
143
+
### Verplicht veld met alleen de melding "Dit veld is verplicht"
144
+
145
+
"Dit veld is verplicht" beschrijft een regel, geen oplossing. De bezoeker weet dat er iets moet worden ingevuld, maar niet wat. Bij een naamveld is "Vul je voor- en achternaam in" direct bruikbaar. Bij een selectie is "Kies een bezorgmethode" concreter dan "Dit veld is verplicht".
146
+
147
+
**Hoe te testen:** laat een verplicht veld leeg en verstuur het formulier. Beschrijft de foutmelding wat je moet invullen, of zegt het alleen dat het veld verplicht is?
148
+
149
+
<Guidelineappearance="dont"title="Generieke melding die alleen de regel herhaalt.">
**Wie kan dit oplossen:** een developer of contentbeheerder schrijft per veld een specifieke foutmelding die beschrijft wat er verwacht wordt.
170
+
171
+
### Wachtwoord voldoet niet aan de eisen maar de melding zegt niet welke eis niet is gehaald
172
+
173
+
Een wachtwoordveld heeft meerdere eisen: minimale lengte, een hoofdletter, een cijfer. De foutmelding zegt alleen "Wachtwoord voldoet niet aan de eisen" zonder te specificeren welke eis niet is gehaald. De bezoeker moet alle eisen opnieuw doorlopen.
174
+
175
+
**Hoe te testen:** vul een wachtwoord in dat aan sommige eisen voldoet maar niet aan alle. Specificeert de foutmelding welke eis niet is gehaald?
176
+
177
+
<Guidelineappearance="dont"title="Generieke melding zonder specifieke eisen.">
Noem in de foutmelding niet welke tekens wél correct zijn — dat onthult informatie over het wachtwoord.
199
+
200
+
**Wie kan dit oplossen:** een developer splitst de validatie op in afzonderlijke controles en toont per eis of die is gehaald.
201
+
202
+
## Hoe te testen
203
+
204
+
### Voor iedereen
205
+
206
+
1. Vul een formulier in met waarden in een verkeerd formaat (datum, telefoonnummer, postcode). Biedt de foutmelding het verwachte formaat en een voorbeeld?
207
+
2. Typ een waarde met een kleine typefout in een zoekveld of keuzelijst. Biedt het formulier een alternatief aan?
208
+
3. Vul een datum in buiten het geldige bereik. Vermeldt de foutmelding welke datums geldig zijn?
209
+
4. Controleer wachtwoordvelden. Geeft de foutmelding aan welke specifieke eis niet is gehaald?
210
+
211
+
### Voor developers
212
+
213
+
1. Controleer elke foutmelding in het formulier. Bevat de melding een suggestie of voorbeeld als het verwachte formaat of de geldige opties bekend zijn?
214
+
2. Test met een screenreader. Worden suggesties voorgelezen samen met de foutmelding? Zijn klikbare suggesties bereikbaar met het toetsenbord?
215
+
3. Controleer dat suggesties bij wachtwoordvelden geen informatie onthullen die de beveiliging ondermijnt.
216
+
4. Gebruik <spanlang="en">axe DevTools</span> voor een eerste scan. Foutsuggesties zijn niet automatisch te herkennen — dit vereist handmatig testen.
217
+
218
+
## Gerelateerde succescriteria
219
+
220
+
-[3.3.1 Foutidentificatie](https://nldesignsystem.nl/wcag/3.3.1/): het formulier meldt welk veld fout is en wat er mis is. Foutsuggestie bouwt hierop voort door ook een oplossing aan te bieden.
221
+
-[3.3.2 Labels of instructies](https://nldesignsystem.nl/wcag/3.3.2/): duidelijke labels en instructies bij invoervelden voorkomen fouten voordat ze ontstaan. Lees hier meer als je het verwachte formaat al bij het label wilt tonen.
222
+
-[3.3.4 Foutpreventie](https://nldesignsystem.nl/wcag/3.3.4/): bij juridische of financiële transacties kan de bezoeker invoer controleren en corrigeren voordat deze definitief wordt verzonden.
223
+
224
+
## Relevante bronnen
225
+
226
+
-[WCAG 2.2: Succescriterium 3.3.3 Foutsuggestie](https://www.w3.org/Translations/WCAG22-nl/#foutsuggestie) — de officiële Nederlandstalige vertaling van het succescriterium. Gebruik dit als referentie voor de exacte eisen.
227
+
-[Understanding SC 3.3.3: Error Suggestion](https://www.w3.org/WAI/WCAG22/Understanding/error-suggestion.html) — de W3C-uitleg bij het succescriterium, met technieken en voorbeelden (Engels).
228
+
-[Accessible form validation](https://www.smashingmagazine.com/2023/02/guide-accessible-form-validation/) — uitgebreide gids van Smashing Magazine over toegankelijke formuliervalidatie, inclusief patronen voor foutsuggesties (Engels).
Laat een gebruiker op een toegankelijke manier weten hoe een formulierveld goed in te vullen. Geef hiervoor hints, suggesties en voorbeelden.
4
-
5
-
Uitzonderingen hierop zijn bijvoorbeeld wachtwoorden, examenvragen of vragen waarvan het niet mogelijk is te weten hoe de fout te corrigeren.
3
+
Bezoekers die een formulier invullen krijgen bij een fout een suggestie hoe ze het veld goed kunnen invullen, als de website weet wat het verwachte antwoord is. Zo begrijpt iedereen direct wat er nodig is om verder te gaan, zonder te hoeven gokken.
0 commit comments