Krótko
Nie każ użytkownikowi ponownie wpisywać tej samej informacji, jeśli system już ją zna i może bezpiecznie użyć jej ponownie.
Zrozumiałość · Poziom A
Nie pytaj o te same informacje dwa razy w tym samym procesie. Zapewnij wstępnie wypełnione pola albo opcje wyboru, jeśli informacje zostały już podane.
Nie każ użytkownikowi ponownie wpisywać tej samej informacji, jeśli system już ją zna i może bezpiecznie użyć jej ponownie.
Użytkownik wypełnia proces zakupowy, zgłoszenie albo formularz w kilku krokach. Najpierw podaje adres dostawy, dane kontaktowe, numer sprawy albo adres e-mail, a po chwili system pyta o to samo jeszcze raz.
Powtarzanie danych zwiększa ryzyko pomyłki i niepotrzebnie obciąża użytkownika. Problem widać szczególnie wtedy, gdy użytkownik musi kopiować adres między krokami, ponownie wpisywać numer sprawy, powtarzać e-mail w kilku sekcjach albo uzupełniać te same dane osoby kontaktowej w tym samym procesie.
Checkbox daje użytkownikowi prosty sposób użycia danych podanych wcześniej w tym samym procesie.
Kod — HTML
<section aria-labelledby="billing-address-heading">
<h2 id="billing-address-heading">
Adres do faktury
</h2>
<p>
Adres dostawy z poprzedniego kroku:
ul. Prosta 10, 00-001 Warszawa.
</p>
<label>
<input
type="checkbox"
name="use-delivery-address"
checked
>
Adres do faktury taki sam jak adres dostawy
</label>
</section>
Użytkownik nie musi przepisywać adresu. Może wybrać dane dostępne z wcześniejszego kroku albo dodać inny adres.
Kod — HTML
<fieldset>
<legend>Wybierz adres do faktury</legend>
<label>
<input
type="radio"
name="billing-address"
value="delivery-address"
checked
>
Użyj adresu dostawy: ul. Prosta 10, Warszawa
</label>
<label>
<input
type="radio"
name="billing-address"
value="new-address"
>
Wpisz inny adres do faktury
</label>
</fieldset>
Ten formularz wymaga ręcznego przepisania adresu, choć system zna już adres dostawy z wcześniejszego kroku.
Kod — HTML
<h2>Adres do faktury</h2>
<label for="billing-street">
Ulica i numer
</label>
<input
id="billing-street"
name="billing-street"
autocomplete="street-address"
>
<label for="billing-city">
Miasto
</label>
<input
id="billing-city"
name="billing-city"
autocomplete="address-level2"
>
Użytkownik widzi, że dane zostały przeniesione, i ma jasną możliwość ich edycji.
Kod — HTML
<section aria-labelledby="contact-summary-heading">
<h2 id="contact-summary-heading">
Dane kontaktowe
</h2>
<p>
Przenieśliśmy dane kontaktowe z kroku 1.
Możesz je sprawdzić i edytować.
</p>
<dl>
<dt>Adres e-mail</dt>
<dd>anna@example.com</dd>
<dt>Telefon</dt>
<dd>500 100 200</dd>
</dl>
<a href="/zamowienie/kontakt">
Edytuj dane kontaktowe
</a>
</section>
To statyczny schemat procesu. Pokazuje, czy użytkownik musi ponownie wpisać te same dane, czy może użyć informacji podanych wcześniej.
Użytkownik musi przepisać dane bez powodu.
Dane są przeniesione, ale interfejs nie wyjaśnia skąd pochodzą ani jak je zmienić.
Użytkownik może użyć wcześniejszych danych i nadal ma kontrolę nad ich zmianą.
Automat może wykryć część powtarzających się pól, podobne etykiety albo brak poprawnej struktury formularza. Może też pomóc znaleźć pola z podobnymi nazwami technicznymi.
Automat zwykle nie oceni, czy dwa pola naprawdę proszą o tę samą informację, czy są częścią tego samego procesu, czy ponowne wpisanie jest uzasadnione bezpieczeństwem i czy użytkownik ma praktyczną możliwość wyboru wcześniej podanych danych.