uitgeschakeld vs. readonly
De attributen disabled
en readonly
hebben vergelijkbare effecten – in feite zien ze er vanuit het oogpunt van de gebruiker hetzelfde uit. In beide gevallen is wat de gebruiker ziet een veld dat enigszins “grijs” is, waarop niet kan worden geklikt of dat niet kan worden bewerkt.
<form> <label for="disabled">Disabled</label><br> <input name="disabled" value="disabled" disabled> <br><br> <label for="readonly">Readonly</label><br> <input name="readonly" value="readonly" readonly></form>
Uitgeschakeld
Leesbaar
Ze zijn echter verschillend en het gebruik van de verkeerde kan problemen veroorzaken.
Als een veld disabled
is, wordt de waarde van het veld niet naar de server gestuurd als het formulier wordt verzonden. Als een veld readonly
is, wordt de waarde wel naar de server gestuurd.
Protip: Als er een reden is waarom je _echt_ niet wilt dat de waarde van een bepaald veld wordt meegenomen in een formulieraanvraag, dan kun je misschien beter naar je server-side formulierafhandeling kijken. Het is mogelijk voor een kwaadwillende gebruiker om het
disabled
attribuut van uw formulierinvoer te overschrijven en willekeurige formuliergegevens te verzenden. Dit geldt eigenlijk voor elk element – vergeet nooit om server-side formuliervalidatie en sanitizing te overwegen.Adam is een technisch schrijver die is gespecialiseerd in documentatie voor ontwikkelaars en tutorials.