Autocomplete i inmatningsfält
Baserat på WCAG krav: 1.3.5 Identify Input Purpose
Källor:
https://webbriktlinjer.se/riktlinjer/154-mark-upp-vanliga-formularfalt-i-koden/
https://www.w3.org/WAI/WCAG21/Understanding/identify-input-purpose.html
Sammanfattning
Använd attributet autocomplete på inmatningsfält.
Beskriv förväntat innehåll med attributet autocomplete, om det finns en standardiserad benämning.
Ange autocomplete=”off” om det gäller känslig information, engångs inmatningar eller om servern erbjuder ordförslag.
Introduktion
Autocomplete är ett attribut som kan användas i koden för att ge användare ordförslag i inmatningsfät. Om en användare tidigare har skrivit in information i ett liknande inmatningsfält så kan de få hjälp utav autocomplete så de inte behöver memorera och skriva in samma uppgifter upprepade gånger.
Detta hör till WCAG’s krav 1.3.5 som även är relevant för DOS-lagen (lagen om Digital Offentlig Service) och ska därför tas i beaktning om sådana inmatningsfält förekommer. Detta dokument kommer gå igenom vad autocomplete är, varför det ska användas samt vilka undantag som kan förekomma.
Vad är autocomplete?
Webbläsare eller hjälpmedel kan ibland automatiskt föreslå inmatning (baserat på till exempel tidigare inmatning i fält av samma typ) i vanliga formulärfält. Det hjälper användare att fylla i inmatningsfält genom att i koden ange vilken typ av innehåll som förväntas.
Vissa webbläsare sparar (lokalt) inmatningar som användaren gör i formulärfält. Tack vare detta kan webbläsaren ge förslag på inmatning när användaren senare hamnar på inmatningsfält som ser ut att ha samma innebörd.
Webbläsare som har autocomplete aktiverat gör sitt bästa för att förslå relevanta inmatningsförslag. De utgår till exempel från att inmatningsfält (input-element) med samma värde på attributen id eller name har samma typ av innehåll. Men så är inte alltid fallet. Med hjälp av attributet autocomplete kan du som utformar formuläret förbättra möjligheterna för webbläsaren att ge relevanta förslag.
Beskriv det förväntade innehållet med attributet autocomplete, om det finns en standardiserad benämning. I HTML5-standarden finns en lista med vanliga ändamål för inmatningsfält. Om ändamålet för inmatningsfältet finns med i denna standardlista kan du genom att använda rätt benämning se till att de förslag som webbläsaren presenterar för användaren med större sannolikhet är relevanta.
Här är ett exempel hur autocomplete kan se ut i kod:
<form action="/prenumerera.html">
Förnamn:<input type="text" name="fnamn" autocomplete="given-name" />
Efternamn: <input type="text" name="enamn" autocomplete="family-name" />
E-post: <input type="email" name="epost" autocomplete="email" />
<input type="submit" value="Prenumerera" />
</form>
Varför ska det användas?
Långa och komplexa formulär utgör ofta ett stort problem för många användare, inte minst användare med kognitiva funktionsnedsättningar. Ju enklare formulären är och desto mindre användaren behöver fylla i, desto mindre är risken för problem. Det är många grupper som har extra stora problem med formulär. Förutom användare med kognitiva funktionsnedsättningar utgör de också problem för användare med skrivsvårigheter och användare med grav synnedsättning.
Attributet autocomplete gör det möjligt att underlätta för användare att fylla i formulärsfält som ska innehålla information som ofta återkommer, exempelvis namn, e-postadress och telefonnummer. Användaren behöver endast fylla i informationen vid ett tillfälle och kan låta webbläsaren spara informationen till nästa gång som användaren ska fylla i samma information i andra formulärsfält. Autocomplete används på inmatningsfält av olika typer som till exempel text, email, number, password.
Se även till att använda typer på inmatningsfält för att begränsa användarens input till den innehållstyp som efterfrågas.
Det finns undantag
Ange autocomplete=”off” om det gäller känslig information eller om servern erbjuder ordförslag.
Det är olämpligt med inmatningsförslag för inmatningsfält som kan innehålla känslig information. Exempel om en annan person som är nära skärmen råkar se vad användaren tidigare matat in i liknande fält.
Det är onödigt med inmatningsförslag för inmatning som enbart ska göras en gång (till exempel engångskoder för inloggning).
Om webbservern erbjuder förslag på inmatning, baserat på information som inte hämtas från användarens webbläsare utan från en databas så är det oftast olämpligt att även webbläsaren ger ordförslag. I samtliga dessa fall bör värdet “off” anges i attributet autocomplete.