Send inn-knapp i skjema
Silktide undersøker skjemaene på sidene dine og rapporterer alle som har felt som kan fylles ut, men ingen send inn-knapp. Uten en slik knapp har noen besøkende ingen måte å sende inn skjemaet på, mens andre ikke kan forutse når det vil bli sendt inn.
Hvorfor dette er viktig
En synlig send inn-knapp forteller besøkende to ting: hvordan de skal sende inn skjemaet, og at ingenting skjer før de velger å gjøre det. Noen som bruker , kan bare sende inn et skjema ved å aktivere en knapp – det er ikke alle som kan trykke på Enter i et felt. Et skjema uten knapp sendes ofte inn automatisk når den besøkende skriver eller endrer et valg. Dette er en uventet endring av kontekst som kan forvirre -brukere og personer med kognitive funksjonsnedsettelser, som plutselig befinner seg på en annen side midt i en oppgave.
Dette er suksesskriterium 3.2.2 i (Ved inndata), et krav på – en del av det mest grunnleggende samsvarsnivået.
Slik løser du problemet
Legg til en send inn-knapp i hvert skjema som er flagget, og merk den eksplisitt
med type="submit":
<!-- Problem: ingen måte å sende inn skjemaet med hensikt -->
<form action="/search">
<input type="text" name="q">
</form>
<!-- Løsning: en eksplisitt send inn-knapp -->
<form action="/search">
<input type="text" name="q">
<button type="submit">Søk</button>
</form>
Hvis skjemaet faktisk ikke skal sendes noe sted – for eksempel et filter som oppdaterer resultatene fortløpende og kunngjør hvordan det fungerer – kan du funnet eller utelate elementet fra kontrollen.
Slik tester Silktide dette
- Finn alle
<form>-elementer på siden, og hopp over dem du har utelatt fra kontrollen. - Ignorer skjemaer uten brukbare felt – skjemaer som ikke inneholder synlige inndatafelt, tekstområder, valglister eller knapper når siden lastes inn. Dette utelater sporingsskjemaer og de usynlige skjemaene som omslutter siden, og som enkelte plattformer genererer. Ellers ville disse ført til falske positiver.
- Rapporter hvert gjenværende skjema som ikke inneholder et element med
type="submit".
Feilsøking
Skjemaet mitt har en knapp, men ble likevel flagget
Silktide ser etter en eksplisitt type="submit". Et <button> uten et
type-attributt sender inn skjemaet i de fleste nettlesere, men gjenkjennes ikke
av denne kontrollen. Det er uansett god praksis å legge til type="submit",
siden det gjør knappens funksjon entydig. Knapper med type="button" sender
aldri inn skjemaet.
Skjemaet vises etter en interaksjon
Felter vurderes når siden lastes inn første gang. Et skjema som er skjult i utgangspunktet og vises senere, for eksempel i en lokalmeny, blir kanskje ikke testet. At skjemaet består denne kontrollen, er derfor ingen garanti for at alle skjemaer på siden har en knapp.