Om funksjonen
Formål
Fyller et <select> med alle IANA-tidssoner fra timezone-list og velger enten en eksplisitt verdi eller nettleserens egen tidssone som standard. Funksjonen tar elementet som parameter i stedet for å slå det opp selv.
Egner seg for
- Rask utfylling av et eksisterende
<select>med alle støttede IANA-tidssoner, enten ved redigering eller med nettleserens tidssone som standard.
Egner seg ikke for
- Ikke for egendefinerte etiketter, gruppering eller delvis bevaring av eksisterende valg. Funksjonen overskriver hele
innerHTMLog forventer et gyldig<select>-element.
Signatur(er)
populerTidssoneValg(selectElement: HTMLSelectElement, options?: {forhandsvalgtTidssone?: string}) => void
| Parameter | Type | Beskrivelse |
|---|---|---|
selectElement | HTMLSelectElement | Select-elementet som skal fylles med <option>-er. |
options (valgfri) | {forhandsvalgtTidssone?: string} | Valgfri eksplisitt forhåndsvalgt tidssone. |
Returnerer: Ingen returverdi; overskriver hele selectElement.innerHTML med nye <option>-er. Bruker eksplisitt forhandsvalgtTidssone når oppgitt, ellers nettleserens egen tidssone.
import {populerTidssoneValg} from "/designsystem/funksjoner/oppslag/populer-tidssone-valg/populer-tidssone-valg.js";
populerTidssoneValg(document.getElementById("stopp-tidssone"));
// Med eksplisitt forhåndsvalg (f.eks. ved redigering av en eksisterende rad):
populerTidssoneValg(select, {forhandsvalgtTidssone: stopp.timezone});
Tilgjengelighet
Bruker native <select>, så tastatur- og skjermleseratferd følger kontrollen. Label, hjelpetekst og eventuell aria-* må legges til av kallende UI.
Referanser
Se også:
../timezone-list/index.html - Direkte avhengighet som leverer IANA-tidssonene funksjonen renderer.../../formattering/format-date/index.html - Valgt tidssone herfra brukes typisk videre når dato/tid skal presenteres for brukeren.../../dom/dialog/index.html - Begge er små DOM-hjelpere for skjema-UI, ofte brukt sammen i opprett/rediger-dialoger.
Brukes av:
turer/js/pages/trip.jsturer/js/features/stops/stops.js
Avhengigheter: ../timezone-list/timezone-list.js