En besøgende åbner din formular til forespørgsler. Hun vælger »privat«, og tre nye felter dukker op om boligens størrelse, antal værelser og ønsket tidsplan. Så skifter hun til »erhverv«, og felterne forsvinder igen. I stedet kommer der spørgsmål om virksomhedstype og antal kvadratmeter. Formularen former sig efter svaret. Det er en dynamisk formular.
Sammenlign med en statisk formular, hvor alle ser de samme 15 felter, uanset hvad de har brug for. Halvdelen af felterne er irrelevante for de fleste. Færre udfylder formularen, fordi den virker lang og upersonlig.
Dynamiske formularer løser det problem ved at reagere på svarene med det samme. Her er, hvordan de virker, hvornår du skal bruge dem, og hvordan de adskiller sig fra statiske formularer.
Hvad er en dynamisk formular?
En dynamisk formular er en webformular, der ændrer felter, opbygning eller indhold ud fra brugerens svar eller eksterne data. Felter kan dukke op, forsvinde eller blive obligatoriske, afhængigt af hvad den besøgende vælger tidligere i formularen.
Ændringerne sker med det samme, uden at siden genindlæses. Et valg i en rullemenu åbner nye felter. Et afkrydsningsfelt viser en valgfri del. En værdi, der er udfyldt på forhånd fra et tidligere besøg, ændrer, hvad formularen spørger om næste gang.
Dynamiske formularer bygger på betingede regler, som du sætter op i formularbyggeren. Når betingelse A er opfyldt, vises felt B. Når betingelse A ikke er opfyldt, skjules felt B. Reglerne kører i browseren, mens den besøgende bruger formularen.
Hvad er en statisk formular?
En statisk formular viser de samme felter til alle besøgende, hver gang. Opbygning, spørgsmål og obligatoriske felter ændrer sig aldrig. En enkel kontaktformular med navn, e-mail og besked er en statisk formular.
Statiske formularer er nemmere at bygge, teste og vedligeholde. Der er ingen regler at sætte op, og ingen risiko for, at felter ikke dukker op, når de skal. Til enkel dataindsamling fungerer en statisk formular fint.
Hvornår du skal bruge dynamiske formularer
Dynamiske formularer er stærke, når forskellige besøgende har brug for forskellige spørgsmål. Virksomheder med flere ydelser har gavn af dem, fordi hver ydelse kræver sine egne oplysninger. En blikkenslager kan spørge om, hvor lækagen er, ved reparationer, men om antal armaturer ved tilbud på installation.
Forløb i flere trin har også gavn af dem. En dynamisk formular kan vise felterne i trin to, først når trin et er færdigt, så hver skærm er kort og overskuelig. Det passer godt sammen med formularer i flere trin.
Formularer, der er koblet til databaser eller brugerkonti, kan udfylde kendte oplysninger på forhånd og kun spørge om det, der mangler. En tilbagevendende kunde kan se sit navn og sin e-mail allerede udfyldt og skal kun skrive de nye oplysninger om forespørgslen.
Hvornår statiske formularer er det bedste valg
Ikke alle formularer behøver at være dynamiske. En enkel kontaktformular med tre felter fungerer bedst som en statisk formular. Betinget logik i en formular med tre felter giver bare kompleksitet uden gevinst.
Statiske formularer er også nemmere at fejlfinde. Hvis indsendelser fejler, eller felter opfører sig forkert, er der færre dele at undersøge. Til vigtige formularer som betaling og samtykke mindsker enkelhed risikoen.
Hvis din målgruppe er ensartet, og alle besøgende giver den samme slags oplysninger, er en statisk formular hurtigere at bygge og lige så effektiv.
Sådan bygger du dynamiske formularer uden kode
Moderne formularbyggere har visuelle værktøjer til betinget logik. Du laver regler som »hvis Type af ydelse er Installation, vis afsnittet Detaljer om installation«. Du skal ikke kunne programmere. Byggeren klarer selv at vise og skjule felter.
Start med at kortlægge beslutningspunkterne i dit forløb. Hvilket spørgsmål afgør, hvad du skal spørge om bagefter? Lav dem først som rullemenuer eller valgfelter, og knyt så de betingede felter til hvert valg.
Test alle veje gennem formularen. Vælg hver mulighed i rullemenuen, og tjek, at de rigtige felter dukker op. En ødelagt regel betyder tabte data fra besøgende, der tog en vej, du ikke har testet.
Dynamiske formularer får lang og kompliceret dataindsamling til at føles kort og personlig. Brug dem, når dine besøgende har brug for forskellige spørgsmål. Hold formularen statisk, når alle svarer på det samme.
Ofte stillede spørgsmål
Gør dynamiske formularer min hjemmeside langsommere?
En velbygget dynamisk formular giver kun ganske lidt ekstra indlæsningstid, fordi den betingede logik kører i browseren uden serverkald for hver ændring af et felt. Tunge formularer med dusinvis af regler på en langsom side kan føles trælle, men selve formularlogikken er let. Hold antallet af felter rimeligt, og test på mobil.
Kan jeg lave en statisk formular om til en dynamisk?
Du kan tilføje betinget logik til en eksisterende statisk formular uden at bygge den forfra. Find ud af, hvilke felter der skal vises på en betingelse, sæt reglerne op i din formularbygger, og test hver vej. WEMASY's hjemmesidebygger har en formularbygger med betinget logik indbygget.
Hvor mange betingede regler kan én formular have?
De fleste formularbyggere understøtter dusinvis af regler pr. formular. Den praktiske grænse afhænger af kompleksiteten, ikke af teknikken. Hvis din formular kræver mere end ti betingede grene, så overvej at dele den op i flere formularer eller bruge flere trin, så hvert afsnit er overskueligt.
Er dynamiske formularer tilgængelige for skærmlæsere?
Dynamiske formularer kan være tilgængelige, hvis felterne har korrekte labels, og hvis de vises og skjules på en måde, skærmlæsere kan opfange. Test med værktøjer til tilgængelighed, når du tilføjer betinget logik. Felter, der dukker op uden korrekt fokus, kan forvirre brugere af hjælpemidler.
Hvad er forskellen på dynamiske formularer og formularer med betinget logik?
Betinget logik er mekanismen, der gør formularer dynamiske. En dynamisk formular bruger regler for betinget logik til at ændre udseende efter svarene. Begreberne beskriver den samme evne fra to sider: dynamisk beskriver adfærden, betinget logik beskriver teknikken.
Skal jeg bruge dynamiske felter til valgfrie oplysninger?
Dynamiske felter fungerer godt til valgfrie afsnit, som kun nogle besøgende har brug for. Lad obligatoriske felter være synlige hele tiden, og brug betinget logik til opfølgende spørgsmål, der afhænger af tidligere svar. Så føles formularen kort, men du får stadig detaljerne, når de er nødvendige.