Standardy · WCAG 2.2

SC 3.2.2 Poziom A WCAG 2.0

Po wprowadzeniu danych

Zmiana ustawienia jakiegokolwiek komponentu interfejsu użytkownika nie może automatycznie powodować zmiany kontekstu, chyba że użytkownik został o tym uprzedzony. Wybór wartości nie powinien po cichu powodować nawigacji, wysłania formularza ani przeładowania strony.

Czego wymaga

Zmiana ustawienia kontrolki — wybranie opcji w <select>, zaznaczenie pola wyboru, kliknięcie przycisku radiowego, edycja pola tekstowego — nie może po cichu powodować znaczącej zmiany kontekstu. Jeśli dane wejściowe naprawdę muszą wyzwalać taką zmianę, strona musi poinformować użytkownika o tym przed napotkaniem kontrolki, aby zachowanie było przewidywalne.

Dozwolone są drobne efekty (ujawnianie zależnych pól, aktualizowanie podglądu); zabroniona jest natomiast cicha nawigacja, wysyłanie formularza, otwieranie nowych okien lub gruntowna reorganizacja strony.

Jak spełnić kryterium

  • Używaj osobnego przycisku „Wyślij” lub „Zastosuj” po wybraniu wartości przez użytkownika, zamiast automatycznego wysyłania przy zmianie.
  • Dla przełączników języka/kraju albo ostrzeż użytkownika („Wybór języka spowoduje przeładowanie strony”), albo wymagaj kliknięcia przycisku „Przejdź”.
  • Dla interfejsów filtrujących aktualizujących wyniki na bieżąco jest to dopuszczalne, gdy wyniki pojawiają się w miejscu — ale jeśli zmienia się URL lub użytkownik zostaje przeniesiony w inne miejsce, traktuj to jako zmianę kontekstu.
  • Ujawniaj pola zależne płynnie, z odpowiednim zarządzaniem fokusem.
  • Gdy automatyczne wysyłanie jest naprawdę konieczne, poinformuj o tym w instrukcjach przy kontrolce lub w dostępnym opisie pola.

Częste błędy

  • Elementy <select> do wyboru kraju/języka, które natychmiast po zmianie wartości przechodzą do innego URL.
  • Pola wyboru filtrów, które przy każdej zmianie przeładowują stronę bez ostrzeżenia, przewijając użytkownika z powrotem na górę.
  • Selektory daty, które wysyłają otaczający formularz natychmiast po wybraniu daty.
  • Przełączniki w panelach administracyjnych uruchamiające destrukcyjne operacje (usuń, opublikuj) bez potwierdzenia.

Dlaczego to ma znaczenie

Użytkownicy czytników ekranowych i klawiatury często eksplorują kontrolki formularza przed zatwierdzeniem — otwierają listę rozwijaną, by odczytać opcje, przechodzą przez przyciski radiowe, by porównać etykiety. Jeśli wybranie wartości po cichu wysyła formularz lub powoduje nawigację, użytkownik traci swoje miejsce i dane. Zasada chroni autonomię użytkownika: to użytkownik, nie strona, decyduje o zatwierdzeniu.