Programmatisk formål med felt
Silktide kontrollerer at skjemafelt som samler inn personopplysninger, for eksempel navn, e-postadresse eller telefonnummer, angir formålet sitt i koden. Dette lar nettlesere og hjelpemidler fylle ut feltet automatisk og presentere det på måter den enkelte forstår.
Formålet angis med attributtet autocomplete i
, satt til en standardverdi som beskriver hva
feltet samler inn:
<!-- Formålet er maskinlesbart: dette samler inn et fornavn -->
<label for="name">Fornavn</label>
<input id="name" type="text" autocomplete="given-name">
Hvorfor dette er viktig
Når et felt angir formålet sitt, kan nettleseren fylle det ut med informasjon den besøkende har lagret. Det hjelper alle, men er særlig viktig for personer med motoriske funksjonsnedsettelser, som kan oppleve skriving som langsom eller smertefull, og personer med kognitive funksjonsnedsettelser, som kan ha vansker med å huske opplysninger på forespørsel. Hjelpemidler kan også bruke det angitte formålet til å legge til kjente ikoner eller symboler i felter, slik at skjemaer blir lettere å kjenne igjen og fylle ut.
Slik løser du det
- Legg til et
autocomplete-attributt med riktig standardverdi i hvert felt som samler inn informasjon om den besøkende – for eksempelname,email,tel,street-addressellerpostal-code. Se den fullstendige listen over verdier (MDN). - Merk at
autocomplete="on"ikke er nok – verdien må angi det spesifikke formålet. - Hvis et bestemt felt av gode grunner ikke skal ha autofullføring, for eksempel av sikkerhetshensyn, kan du eller ignorere funnet for det feltet.
Slik tester Silktide dette
- Finn inndatafeltene på hver side, og hopp over typer som aldri samler inn personopplysninger (knapper, avmerkingsbokser, alternativknapper, filvelgere, søkefelt og lignende), samt felt som legges inn av kjente tredjeparts- moduler, for eksempel de skjulte skjemaene som sporings- og oversettelsesskript legger til for eget bruk.
- Fastslå etiketten for hvert felt fra dets , med plassholdertekst som reserve.
- Der etiketten antyder personopplysninger – ord som «navn»,
«e-post», «telefon», «adresse», «postnummer», «fødselsdato» – forventes en
spesifikk
autocomplete-verdi. - Rapporter hvert slikt felt der
autocomplete-attributtet mangler eller bare er satt tilonelleroff. Alle spesifikke verdier består kontrollen; Silktide vurderer ikke om verdien er riktig for feltet.
Feilsøking
Et felt er flagget, men skulle ikke vært det
Silktide utleder feltets formål fra etiketten. Hvis etiketten mangler, kan ikke Silktide utelukke feltet og kan flagge det – å rette etiketten (se Feltetiketter) løser vanligvis dette. Hvis feltet faktisk ikke har noe formål for autofullføring, kan du ignorere funnet for det feltet.
Et felt med feil autofullføringsverdi består
Denne kontrollen verifiserer at et spesifikt formål er angitt, ikke at det angitte formålet er riktig. Kontroller verdiene dine mot standardlisten når du legger dem til.