Normative · WCAG 2.2

SC 3.2.2 Livello A WCAG 2.0

All'input

La modifica dell'impostazione di un componente dell'interfaccia utente non deve causare automaticamente un cambiamento di contesto, a meno che l'utente non sia stato avvertito in anticipo. Selezionare un valore non dovrebbe navigare, inviare o ridisporre silenziosamente la pagina.

Cosa richiede

Modificare un’impostazione su un controllo — scegliere un’opzione in un <select>, spuntare una casella di controllo, selezionare un pulsante radio, modificare un campo di testo — non deve causare silenziosamente un cambiamento di contesto significativo. Se l’input deve davvero innescare tale cambiamento, la pagina deve avvertire l’utente prima che incontri il controllo, in modo che il comportamento sia prevedibile.

Gli effetti minori ammessi (rivelazione di campi dipendenti, aggiornamento di un’anteprima) sono accettabili; ciò che è vietato è la navigazione silenziosa, l’invio di moduli, l’apertura di nuove finestre o la riorganizzazione complessiva del contenuto.

Come soddisfarlo

  • Usare un pulsante separato di invio o applicazione dopo che l’utente ha selezionato i valori, invece di auto-inviare al cambio.
  • Per i selettori di lingua o paese, avvertire l’utente («La selezione di una lingua ricaricherà la pagina») oppure richiedere un pulsante Vai.
  • Per le interfacce di filtro che aggiornano i risultati in tempo reale, ciò è accettabile quando i risultati appaiono in linea — ma se l’URL cambia o l’utente viene spostato altrove, trattarlo come un cambiamento di contesto.
  • Gestire in modo fluido la rivelazione di campi dipendenti, con un’appropriata gestione del focus.
  • Quando l’auto-invio è davvero necessario, annunciarlo nelle istruzioni vicino al controllo o nella descrizione accessibile del campo.

Errori comuni

  • Elementi <select> per paese o lingua che navigano immediatamente verso un URL diverso quando il valore cambia.
  • Caselle di controllo per i filtri che ricaricano la pagina a ogni modifica senza avviso, riportando l’utente all’inizio.
  • Calendari che inviano il modulo circostante nel momento in cui viene scelta una data.
  • Interruttori di attivazione nei pannelli di amministrazione che avviano operazioni distruttive (eliminazione, pubblicazione) senza conferma.

Perché è importante

Gli utenti di screen reader e di tastiera spesso esplorano i controlli di un modulo prima di confermare — aprono un menù a tendina per leggere le opzioni, navigano con Tab attraverso i pulsanti radio per confrontare le etichette. Se la selezione di un valore invia silenziosamente o naviga, l’utente perde la propria posizione e i propri dati. La regola preserva l’autonomia dell’utente: è l’utente, non la pagina, a decidere quando confermare.