Krótko
Jeśli formularz wykryje błąd i wiadomo, jak go poprawić, użytkownik powinien dostać konkretną podpowiedź naprawy.
Zrozumiałość · Poziom AA
Błędy i komunikaty walidacyjne muszą pokazywać tekst wyjaśniający problem i sugerujący, jak go naprawić, na przykład „wpisz co najmniej 8 znaków”.
Jeśli formularz wykryje błąd i wiadomo, jak go poprawić, użytkownik powinien dostać konkretną podpowiedź naprawy.
Użytkownik wpisuje dane w formularzu. Po wysłaniu widzi komunikat „Nieprawidłowa wartość” albo „Błąd formularza”. Wie, że coś jest źle, ale nie wie, jak to naprawić.
Musi zgadywać format daty, liczbę cyfr telefonu, wymagany układ hasła albo sposób wpisania numeru dokumentu. W długim formularzu taka zgadywanka szybko zamienia prosty błąd w porzucone zadanie.
To kryterium dotyczy sugestii po wykryciu błędu. Nie zastępuje etykiet i instrukcji przed wpisaniem danych ani samego wskazania, gdzie jest błąd.
aria-describedby.Nie zawsze można podać pełną sugestię korekty. 3.3.3 wymaga sugestii wtedy, gdy błąd został wykryty i można bezpiecznie podać pomocną podpowiedź.
Komunikat nie tylko mówi, że jest błąd. Pokazuje też, jak poprawić wartość.
Kod — HTML
<label for="email">
Adres e-mail
</label>
<input
id="email"
name="email"
type="email"
aria-invalid="true"
aria-describedby="email-error"
>
<p id="email-error">
Wpisz adres e-mail w formacie nazwa@example.com.
</p>
Użytkownik nie musi zgadywać formatu daty.
Kod — HTML
<label for="birth-date">
Data urodzenia
</label>
<input
id="birth-date"
name="birth-date"
type="text"
aria-invalid="true"
aria-describedby="birth-date-error"
>
<p id="birth-date-error">
Wpisz datę w formacie RRRR-MM-DD, np. 1990-04-27.
</p>
Użytkownik wie, że jest błąd, ale nie wie, jak go poprawić. Brakuje sugestii.
Kod — HTML
<label for="phone">
Telefon
</label>
<input
id="phone"
name="phone"
type="tel"
aria-invalid="true"
>
<p>
Nieprawidłowa wartość.
</p>
W logowaniu nie zawsze należy podawać, która część danych jest błędna. Sugestia ma pomagać, ale nie może obniżać bezpieczeństwa.
Kod — HTML
<p id="login-error">
Nie udało się zalogować. Sprawdź login i hasło.
</p>
To statyczne demo edukacyjne. Pola i komunikaty są makietami, nie działającym formularzem.
Telefon
Nieprawidłowa wartość.
Komunikat wskazuje problem, ale nie mówi, co trzeba zmienić.
Data urodzenia
Wpisz poprawną datę.
Sugestia jest nadal za ogólna. Użytkownik nie zna oczekiwanego formatu.
Data urodzenia
Wpisz datę w formacie RRRR-MM-DD, np. 1990-04-27.
Komunikat daje konkretną, bezpieczną podpowiedź naprawy.
aria-describedby.aria-invalid.