20. februar 2009 - 12:52Der er
13 kommentarer og 1 løsning
Indtastning af tidspunkt i formular og validering
Jeg laver en omfattende formular (på papir 37 A4-sider) med over 1000 felter. I sagens natur skal det køre så glat som muligt når man skal indtaste data, for ellers bliver man aldrig færdig. Man skal blandt andet indtaste en masse tidspunkter (HH:MM). Her ville det jo være fedt hvis man havde to felter, hvor man automatisk sprang videre fra HH til MM når man havde indtastet 2 tal. Jeg er forholdsvis grøn m.h.t. PHP og HTML, og helt jomfruelig hvad angår JS. Jeg går ud fra at jeg skal ud i noget java. Er der nogen der kan hjælpe?
I dette særtema om aspekter af AI ser vi på skiftet fra sprogmodeller til AI-agenter, og hvordan virksomheder kan navigere i spændet mellem teknologisk hastighed og behovet for menneskelig kontrol.
Jeg ved ikke hvorfor der er skoleeksemplet på en designfejl. Jeg er ikke i tvivl om at det kan gøres nemmere end jeg gør det, men nu tjener jeg ikke mine penge ved at lave det her - og det er nok godt nok:-) Sagen er den at data i første omgang bliver skrevet ind på papir, og efterfølgende skal tastes ind via nettet. Det er et ønske at formularen på nettet ligner papirudgaven, så jeg gemmer mine word-dokumenter i html-format. Jeg ved godt det er FY og får en rigtig programmør til at få cola'en galt i halsen, men det virker. Du får et lille uddrag:
Som du kan se bruger jeg to input-felter for at få indtastet et klokkeslæt. Det er nok ikke måden at gøre det på, men som du nok har fornemmet, er jeg novice på området...
Den dag, du har udfyldt 999 felter, og browseren går ned - eller din kat hiver stikket ud - finder du ud af én af årsagerne til, at der er tale om en designfejl ;o)
Er ID'erne lavet, så der altid står 'spg' - efterfulgt af et tal - og er der altid én til forskel mellem tallet for timer og minutter?
Ok, nu har jeg prøvet bare at køre din kode, og det virker heller ikke. Der må være et eller andet fundamentalt jeg ikke fatter. I firefox er fejlmeddelelsen "Fejl: oInp.form has no properties" og i IE "Et objekt er obligatorisk".
Ok, så virker det. PHP og HTML er til at forstå, men JS er jo helt sort.... Smider du et svar så du kan få point? Du skal have mange tak for hjælpen - du er godt nok aktiv herinde på siden.
Jeg går ud fra at man nemt kan ændre dit lille script så man også kan hoppe videre når man har tjekket af i en check-box. jeg kan ikke selv greje hvordan.
Før skulle man hoppe videre til næste felt når man havde fyldt 2 tal ud i et felt. Nu skal man hoppe videre til næste felt når man har tjekket af i en checkbox. Det skal helst kunne fungere alene med tastaturet, så man skal kunne tjekke text-boxen af med mellemrums-tasten.
function goToNext(oInp) { if (oInp.value.length<1) return; var aElms = oInp.form.elements, nInx = Number(oInp.name.split("spg")[1]), sNextName = "spg" + (nInx+=1); if (aElms[sNextName]) aElms[sNextName].focus(); }
Det er kun en delvis succes. Mine id'er kører fotsat derudaf som spg1, spg2, spg3...
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.