WCAG framgångskriterier · Level AA
WCAG 1.3.5: Identifiera inmatningssyfte
WCAG 1.3.5 kräver att syftet med varje inmatningsfält som samlar in personuppgifter kan bestämmas programmatiskt, vilket gör det möjligt för webbläsare och hjälpmedelsteknik att automatiskt fylla i, märka eller anpassa fält. Detta är avgörande för användare med kognitiva funktionsnedsättningar och motoriska funktionsnedsättningar som gynnas av minskat manuellt inmatningsarbete.
Vad denna regel innebär
WCAG 1.3.5 — Identify Input Purpose är ett kriterium på nivå AA som introducerades i WCAG 2.1 och förts vidare in i WCAG 2.2. Det kräver att varje <input>-, <select>- eller <textarea>-element som samlar in information om användaren måste ha sitt syfte kommunicerat programmatiskt, så att webbläsare och hjälpmedel kan identifiera och agera på detta syfte automatiskt.
Mekanismen för att uppfylla detta kriterium är attributet autocomplete, kombinerat med rätt token-värde från den officiella lista som definieras i HTML-specifikationen. När ett fält samlar in en användares namn, e-postadress, telefonnummer, postadress, kreditkortsnummer eller liknande personuppgifter måste attributet autocomplete ha ett värde som korrekt beskriver fältets syfte — till exempel autocomplete="given-name" för ett fält för förnamn, eller autocomplete="email" för ett e-postfält.
Kriteriet gäller specifikt för inmatningar som samlar in information om användaren själv. Det gäller inte för fält där en användare matar in data om någon annan (till exempel ett resebokningsformulär som frågar efter en passagerares namn när användaren bokar för någon annan), och det gäller inte heller för fält där autofyll skulle skapa en säkerhetsrisk — såsom engångslösenord eller CAPTCHA-liknande utmaningar, som legitimt kan använda autocomplete="off" eller autocomplete="one-time-code".
För att bli godkänd krävs att: (1) varje fält inom kriteriets omfattning har ett autocomplete-attribut; och (2) värdet på detta attribut är en giltig, igenkänd token från HTML-autofyllspecifikationen — inte en godtycklig sträng, inte ett tomt värde där ett meningsfullt krävs, och inte en felstavad token. Ett fel uppstår när ett fält inom kriteriets omfattning saknar autocomplete-attribut, har autocomplete="off" utan motivering, eller har en ogiltig token såsom autocomplete="firstname" (den korrekta token är given-name) eller autocomplete="phone" (den korrekta token är tel).
Den fullständiga listan över giltiga autocomplete-tokens underhålls av WHATWG HTML Living Standard och inkluderar värden för namn (given-name, family-name, additional-name), adresser (street-address, address-line1, postal-code, country-name), kontaktinformation (email, tel, tel-national), inloggningsuppgifter (username, current-password, new-password), betalningsuppgifter (cc-name, cc-number, cc-exp, cc-csc) och mer. Tokens kan också föregås av sektionsidentifierare (t.ex. section-billing) samt nyckelord för leverans eller fakturering för att hantera flera adressgrupper på en och samma sida.
Varför det är viktigt
Detta kriterium finns främst för att gynna användare med kognitiva funktionsnedsättningar, inklusive personer med dyslexi, minnesnedsättningar, uppmärksamhetsstörningar och inlärningssvårigheter. För dessa användare kan det vara en betydande kognitiv belastning att fylla i ett komplext kassaflöde korrekt — med separata fält för förnamn, efternamn, gatuadress, stad, postnummer, telefon och betalningsuppgifter. När autocomplete-tokens är korrekta kan webbläsare förifylla fält från användarens sparade profil med en enda interaktion, vilket dramatiskt minskar friktion och risken för fel.
Användare med motoriska funktionsnedsättningar — inklusive personer med begränsad handfunktion som använder switch-styrning, ögonstyrningsprogram eller sug- och blås-enheter — har lika stor nytta. För dessa användare är skrivande långsamt, ansträngande och ibland smärtsamt. Autofyll som fungerar tillförlitligt kan förvandla en tio minuter lång prövning till en nästan omedelbar uppgift. Enligt Världshälsoorganisationen lever cirka 1,3 miljarder människor globalt med någon form av betydande funktionsnedsättning, och motoriska nedsättningar som påverkar finmotoriken i händerna är bland de vanligaste.
Utöver autofyll gör korrekta autocomplete-tokens det möjligt för webbläsare och hjälpmedel att presentera anpassade ikoner, etiketter eller förstärkta inmatningsgränssnitt — till exempel att automatiskt visa ett telefonknappsats för ett tel-fält på en mobil enhet, eller visa en kreditkortsikon för ett cc-number-fält. Lösenordshanterare, som är kritiska hjälpmedel för användare med minnesnedsättningar, förlitar sig också på dessa tokens för att identifiera och fylla i fält för inloggningsuppgifter korrekt.
Föreställ dig ett scenario i verkligheten: en användare med cerebral pares fyller i en ansökan om statliga förmåner. Formuläret har tolv fält som täcker namn, adress, nationellt ID och kontaktuppgifter. Utan korrekta autocomplete-värden måste varje fält skrivas in manuellt. En enda felstavad token — till exempel autocomplete="surname" istället för autocomplete="family-name" — räcker för att hindra webbläsaren från att känna igen fältet, vilket gör att användaren måste skriva sitt efternamn tecken för tecken. Med korrekta tokens kan hela formuläret autofyllas på några sekunder, vilket minskar både ansträngning och felgrad.
Det finns också användbarhets- och konverteringsfördelar för organisationer: forskning visar konsekvent att formulär som är kompatibla med autofyll har lägre avhoppsfrekvens och högre slutförandefrekvens, vilket innebär att åtgärdande av autocomplete-tokens inte bara är en tillgänglighetsförbättring utan också en direkt affärsförbättring.
Relaterade Axe-core-regler
- autocomplete-valid — Detta är den primära axe-core-regeln för WCAG 1.3.5. Den inspekterar varje
<input>-,<select>- och<textarea>-element som har ettautocomplete-attribut och kontrollerar om attributets värde är en igenkänd, giltig token från HTML-autofyllspecifikationen. Regeln flaggar element där token är felstavad (t.ex.given namemed ett mellanslag istället för ett bindestreck), där ett icke-standardiserat proprietärt värde har använts (t.ex.autocomplete="first-name"), eller där token-ordningen i ett värde med flera tokens är felaktig (t.ex. när ett fältnamn placeras före ett obligatoriskt sektionsprefix). Regeln flaggar inte fält som helt saknar ettautocomplete-attribut — den situationen kräver manuell granskning — eftersom axe-core inte programmatiskt kan avgöra om ett visst fält omfattas av kriteriet (dvs. om det samlar in information om användaren). - Varför manuell testning också krävs — Automatiserade verktyg som axe-core kan bara validera att ett befintligt
autocomplete-värde är syntaktiskt korrekt; de kan inte avgöra om den valda token korrekt beskriver fältets syfte. Till exempel skulle ett fakturerings-telefonfält medautocomplete="email"klara den automatiserade regeln (eftersomemailär en giltig token) men skulle inte uppfylla kriteriet eftersom token inte matchar fältets faktiska syfte. På samma sätt kan automatiserade verktyg inte identifiera fält som saknar ettautocomplete-attribut men borde ha ett, eftersom det kräver mänsklig bedömning baserad på kontext att avgöra om ett fält samlar in personuppgifter om användaren. Manuell granskning av varje formulärfält som samlar in användarspecifik data är därför avgörande för full efterlevnad av 1.3.5.
Hur man testar
- Kör en automatiserad skanning med axe DevTools eller Lighthouse. Öppna sidan som innehåller formuläret i Chrome eller Firefox. I axe DevTools, klicka på "Analyze" och filtrera resultaten efter regel-ID:t
autocomplete-valid. I Lighthouse, kör en tillgänglighetsgranskning och leta efter överträdelser som refererar till autocomplete. Notera varje flaggat element och dokumentera de ogiltiga token-värden som rapporteras. Åtgärda varje flaggat element och skanna om för att bekräfta att felet är löst. - Identifiera manuellt alla fält inom kriteriets omfattning. Gå igenom formuläret och lista varje fält som samlar in information om den aktuella användaren — namnfält, adressfält, e-post, telefon, betalningsuppgifter, inloggningsuppgifter. För varje fält, verifiera att ett
autocomplete-attribut finns och att dess token matchar fältets faktiska syfte enligt listan över HTML-autofylltokens. Fält som samlar in information om andra personer ligger utanför kriteriets omfattning och kan uteslutas. - Testa webbläsarens autofyllbeteende. I Chrome eller Firefox, säkerställ att webbläsaren har en sparad profil (Inställningar > Autofill). Navigera till formulärsidan och klicka i det första fältet för personuppgifter. Bekräfta att webbläsaren presenterar ett autofyllförslag och att val av detta fyller i rätt fält med rätt värden. Upprepa för adressfält, betalningsfält och fält för inloggningsuppgifter. Om autofyll inte föreslår värden eller fyller i fel fält är autocomplete-tokens sannolikt felaktiga.
- Testa med en kombination av skärmläsare och webbläsare. Med NVDA och Firefox, navigera till varje formulärfält med Tab-tangenten. NVDA ska läsa upp fältets etikett och syfte; vissa kombinationer av skärmläsare och webbläsare kommer också att läsa upp autocomplete-syftet. Med VoiceOver på macOS (Safari), navigera mellan fält med Tab och lyssna efter att VoiceOver meddelar att autofyll är tillgängligt. Med JAWS och Chrome, tabba på liknande sätt genom fälten och bekräfta att JAWS meddelar förväntad fältkontext. Även om skärmläsare inte alltid uttryckligen meddelar autocomplete-tokens, bekräftar du genom att säkerställa att autofyll fungerar korrekt i kombination med tangentbordsnavigering att det programmatiska syftet exponeras.
- Inspektera autocomplete-attribut i webbläsarens DevTools. Högerklicka på varje formulärfält och välj "Inspect." I panelen Elements, bekräfta att
autocomplete-attributet finns och att dess värde exakt matchar en giltig token. Var särskilt uppmärksam på värden med flera tokens — till exempelautocomplete="shipping street-address"— och bekräfta att token-ordningen följer specifikationen (sektionsnamn, sedan "shipping" eller "billing", sedan fältnamn).
Hur man åtgärdar
Namnfält — Felaktigt
<!-- Invalid: uses non-standard token 'firstname' instead of 'given-name' -->
<label for='fname'>First Name</label>
<input type='text' id='fname' name='first_name' autocomplete='firstname'>
<label for='lname'>Last Name</label>
<input type='text' id='lname' name='last_name' autocomplete='surname'>
Namnfält — Korrekt
<!-- Valid: uses the exact WHATWG-specified tokens 'given-name' and 'family-name' -->
<label for='fname'>First Name</label>
<input type='text' id='fname' name='first_name' autocomplete='given-name'>
<label for='lname'>Last Name</label>
<input type='text' id='lname' name='last_name' autocomplete='family-name'>
Adressformulär med fakturerings- och leveranssektioner — Felaktigt
<!-- Invalid: missing autocomplete attributes entirely on address fields -->
<fieldset>
<legend>Billing Address</legend>
<input type='text' name='bill_street' placeholder='Street Address'>
<input type='text' name='bill_city' placeholder='City'>
<input type='text' name='bill_postal' placeholder='Postal Code'>
</fieldset>
Adressformulär med fakturerings- och leveranssektioner — Korrekt
<!-- Valid: autocomplete tokens include 'billing' prefix and correct field names -->
<fieldset>
<legend>Billing Address</legend>
<input type='text' name='bill_street' autocomplete='billing street-address' placeholder='Street Address'>
<input type='text' name='bill_city' autocomplete='billing address-level2' placeholder='City'>
<input type='text' name='bill_postal' autocomplete='billing postal-code' placeholder='Postal Code'>
</fieldset>
Telefonfält — Felaktigt
<!-- Invalid: uses 'phone' which is not a recognized autocomplete token -->
<label for='tel'>Phone Number</label>
<input type='text' id='tel' name='telephone' autocomplete='phone'>
Telefonfält — Korrekt
<!-- Valid: 'tel' is the correct autocomplete token for a full phone number -->
<label for='tel'>Phone Number</label>
<input type='tel' id='tel' name='telephone' autocomplete='tel'>
Inloggningsuppgifter — Felaktigt
<!-- Invalid: autocomplete='off' prevents password managers and autofill from working -->
<label for='user'>Username</label>
<input type='text' id='user' name='username' autocomplete='off'>
<label for='pass'>Password</label>
<input type='password' id='pass' name='password' autocomplete='off'>
Inloggningsuppgifter — Korrekt
<!-- Valid: 'username' and 'current-password' allow password managers to function correctly -->
<label for='user'>Username</label>
<input type='text' id='user' name='username' autocomplete='username'>
<label for='pass'>Password</label>
<input type='password' id='pass' name='password' autocomplete='current-password'>
Vanliga misstag
- Att använda
autocomplete="firstname"ellerautocomplete="first-name"istället för den korrekta tokengiven-name". Dessa icke-standardiserade värden känns inte igen av webbläsare eller hjälpmedel även om de verkar logiska. Använd alltid de exakta tokens från HTML-autofyllspecifikationen. - Att använda
autocomplete="phone"istället förautocomplete="tel". Ordet "phone" är inte en giltig token. Specifikationen användertelför ett fullständigt telefonnummer, ochtel-national,tel-area-code,tel-localför delarna av ett telefonnummer. - Att sätta
autocomplete="off"på fält för inloggningsuppgifter som en missriktad säkerhetsåtgärd. Moderna webbläsare och WCAG-specifikationen erkänner båda att det skapar verkliga hinder för användare med funktionsnedsättningar att förhindra autofyll på inloggningsformulär, och att det inte på något meningsfullt sätt förbättrar säkerheten. Användautocomplete="username"ochautocomplete="current-password"istället. - Att helt utelämna
autocomplete-attributet på fält för personuppgifter, i tron att webbläsaren kommer att härleda syftet från fältnamnet eller etiketten. Webbläsare använder heuristik för att gissa fältsyfte, men dessa är opålitliga och inkonsekventa mellan olika webbläsare. Tydliga tokens krävs för en garanterat tillgänglig upplevelse. - Att använda
autocomplete="address"istället för de specifika adress-subtokens. Det finns ingenaddress-token i specifikationen. Du måste användastreet-address,address-line1,address-line2,address-level1(delstat/län),address-level2(stad) ochpostal-codevar för sig. - Att placera nyckelorden för leverans eller fakturering i fel ordning i värden med flera tokens. Den korrekta ordningen är: valfritt sektionsprefix (t.ex.
section-billing), sedan valfritt nyckelord för leverans/fakturering, sedan fältnamns-token. Att skrivaautocomplete="street-address billing"är ogiltigt; den korrekta formen ärautocomplete="billing street-address". - Att bara tillämpa
autocompletepå synliga fält och ignorera dolda eller dynamiskt visade fält. Fält som initialt är dolda men visas genom användarinteraktion (såsom ytterligare adressrader eller valfria fält) måste också ha korrekta autocomplete-tokens när de blir aktiva. - Att använda JavaScript för att dynamiskt ta bort eller skriva över
autocomplete-attributet efter sidladdning. Vissa formulärbibliotek eller UI-ramverk återställer inmatningsattribut när komponenter monteras eller renderas om, vilket oavsiktligt tar bort autocomplete-tokens. Verifiera alltid att attributet finns kvar i den levande DOM:en efter att all JavaScript har körts. - Att anta att
type="email"ellertype="tel"på ett input-fält är tillräckligt för att kommunicera syfte utanautocomplete. Även omtypeger viss information ärautocomplete-attributet en separat, explicit signal som krävs av WCAG 1.3.5 och används på ett annat sätt av webbläsare och hjälpmedel. - Att använda samma
autocomplete-token på två olika fält som samlar in olika data. Till exempel förvirrar det webbläsare att märka både ett fält för jobb-e-post och ett fält för privat e-post medautocomplete="email", och kan leda till felaktig autofyll. Använd sektionsprefix (t.ex.section-work emailrespektivesection-personal email) för att särskilja dem.
Relation till Turkiets tillgänglighetsreglering
Turkiets Presidential Circular 2025/10, publicerad i Official Gazette nr 32933 den 21 juni 2025, fastställer bindande tillgänglighetskrav för ett brett spektrum av organisationer som är verksamma i Turkiet. Cirkuläret kräver överensstämmelse med WCAG 2.2 på nivå AA som grundstandard för digitala tjänster, vilket direkt inkluderar WCAG 1.3.5 — Identify Input Purpose.
De enhetstyper som omfattas av cirkuläret är mycket omfattande. Offentliga institutioner och statliga myndigheter måste uppfylla dessa standarder för alla medborgarorienterade digitala tjänster. Privata aktörer som omfattas inkluderar e-handelsplattformar, banker och finansiella tjänsteleverantörer, sjukhus och vårdgivare, teleoperatörer med 200,000 eller fler abonnenter, licensierade resebyråer, privata persontransportföretag och privata utbildningsinstitutioner som auktoriserats av Ministry of National Education (MoNE). Den praktiska innebörden är att i princip varje större konsumentinriktad digital produkt i Turkiet — från bankappar till kassor i nätbutiker till vårdbokningsportaler — måste ha korrekt implementerade autocomplete-tokens på alla inmatningsfält för personuppgifter.
För WCAG 1.3.5 specifikt innebär detta att alla turkiska kassaflöden för e-handel, formulär för öppnande av bankkonton, formulär för patientregistrering på sjukhus eller formulär för telekomabonnemang som samlar in användarinformation såsom namn, adress, telefonnummer eller betalningsuppgifter måste inkludera giltiga autocomplete-attributvärden på varje relevant inmatningsfält. Underlåtenhet att göra detta utgör en bristande överensstämmelse på nivå AA och kan hindra en organisation från att få eller behålla Accessibility Logo (Erişilebilirlik Logosu), det officiella märke som utfärdas av Ministry of Family and Social Services och som intygar att en organisations digitala tjänster uppfyller tillgänglighetsstandarder.
Accessibility Logo har både anseendemässig och regulatorisk tyngd, och organisationer på konkurrensutsatta konsumentmarknader — såsom e-handel och banksektorn — har starka incitament att uppnå och behålla den. Eftersom WCAG 1.3.5 är enkel att implementera (att lägga till eller korrigera autocomplete-attributvärden kräver inga arkitektoniska förändringar) men ger betydande nytta för användare med kognitiva och motoriska funktionsnedsättningar, utgör den en av de mest värdefulla och minst arbetskrävande tillgänglighetsförbättringarna en organisation kan göra i jakten på full överensstämmelse på nivå AA enligt cirkulär 2025/10.
Organisationer bör granska alla formulär på sina digitala egendomar — inklusive mobila webbgränssnitt och responsiva layouter — och etablera en utvecklingspolicy som kräver korrekta autocomplete-tokens som en standarddel av varje formulärimplementation. Detta bör upprätthållas genom automatiserad testning i CI/CD-pipelines med hjälp av verktyg som axe-core, så att regressioner fångas innan de når produktion.
