Tilbake til alle komponenter

TextInput

TextInput er en enkeltlinjers tekstinndatafelt. Komponenten inkluderer label, feilmelding og hjelpetekst i ett og håndterer tilgjengelighet automatisk — label er koblet til input via htmlFor/id. Alle skjema-primitiver i Jøkul følger samme API-mønster.

Props

Props
Prop
Type
Påkrevd
Standard
Beskrivelse
labelEgendefinertstringJaSynlig label over inputfeltet. Kobles automatisk til input-elementet for tilgjengelighet. Bruk et beskrivende substantiv, f.eks. «Navn» eller «E-postadresse».
valueNative HTMLstringNeiKontrollert verdi. Bruk sammen med onChange for kontrollert komponent-mønster.
defaultValueNative HTMLstringNeiInitiell verdi for ukontrollert bruk. Ikke bruk sammen med value.
onChangeReactReact.ChangeEventHandler<HTMLInputElement>NeiKalles ved hvert tastetrykk. Brukes i kontrollert komponent-mønster.
errorLabelEgendefinertstringNeiFeilmelding vist under inputfeltet med rød ramme. Vis kun ved faktisk valideringsfeil — ikke vis tomt errorLabel. Tømmes automatisk når verdien er gyldig.
helpLabelEgendefinertstringNeiHjelpetekst vist under label. Brukes for format-hint eller kortfattede instruksjoner. Vises ikke når errorLabel er satt.
placeholderNative HTMLstringNeiPlassholdertekst i tomt felt. Bruk kun for eksempelverdi, aldri som erstatning for label. Ikke bruk instruksjoner som placeholder.
disabledNative HTMLbooleanNeifalseDeaktiverer feltet. Deaktiverte felter sendes ikke med i form-innsending.
readOnlyNative HTMLbooleanNeifalseGjør feltet skrivebeskyttet. Brukeren kan markere og kopiere verdien, men ikke endre den.
typeNative HTML"text" | "email" | "password" | "tel" | "url" | "search" | "number"Nei"text"HTML input-type. Velg riktig type for å få riktig tastatur på mobil og semantisk validering.
autoCompleteNative HTMLstringNeiHTML autocomplete-attributt. Bruk alltid autocomplete="email", autocomplete="name" etc. for skjemafelt som brukere forventer autofullfør for.

Utfasede props

Utfasede props
Prop
Type
Påkrevd
Standard
Beskrivelse
actionEgendefinertUtfasetActionNeiHandlingsknapp integrert i inputfeltet.

Eksempler

Grunnleggende bruk

Et enkelt kontrollert inputfelt. Legg alltid til label og koble onChange til state.

TSX

Med hjelpetekst

helpLabel brukes for format-hint eller instruksjoner. Vises rett under label, ikke som placeholder.

11 siffer, f.eks. 01010112345
TSX

Med feilmelding

errorLabel erstatter helpLabel og endrer feltet til feil-tilstand. Vis kun ved faktisk feil — ikke initialiser med feilmelding.

Skriv inn en gyldig e-postadresse
TSX

Skrivebeskyttet

readOnly passer for verdier brukeren skal se men ikke endre, f.eks. beregnet verdi eller hentet data.

TSX

Migrering

Disse eksemplene viser hvordan du erstatter utfasede props med den anbefalte API-en.

Handlingsknappen i tekstfeltet sendes som element

Utfaset

action-propen er utfaset. Bruk actionButton med et React-element — typisk en Button eller IconButton — i stedet.

  1. Finn denne koden
    TSX
    <TextInput
        label="Søk"
        action={{ icon: "search", label: "Søk", onClick: handleSearch }}
    />
  2. Erstatt med dette
    TSX
    import { Button } from "@fremtind/jokul/button";
    
    <TextInput
        label="Søk"
        actionButton={
            <Button variant="secondary" onClick={handleSearch}>
                Søk
            </Button>
        }
    />

Relaterte komponenter

Button

Button brukes til å utløse handlinger.