Avatar billede compac Seniormester
20. februar 2009 - 10:57 Der er 12 kommentarer og
1 løsning

Formater tidspunkt

Jeg har en validering på et tidspunkt:

    valTime = new RegExp("^([0-1][0-9]|[2][0-3]).([0-5][0-9])$");
      if (document.skriv1.tid.value.match(valTime) == null) {
        alert("Skriv tidspunktet i det korrekte format (hh.mm)");
        document.skriv1.tid.focus();
        return false;
      }

Den kræver at tidspunktet altid skrives med tocifrede tal i både timer og minutter.
Hvordan får jeg ændret den, så den accepterer, at der kun står 1 ciffer foran punktummet (timer fra kl. 1-9) ?
Avatar billede olebole Juniormester
20. februar 2009 - 11:08 #1
<ole>

Hvis du har lyst til at være rar ved brugeren og dig selv, lader du ham foretage valget fra et par dropdowns i stedet  =)

/mvh
</bole>
Avatar billede compac Seniormester
20. februar 2009 - 11:19 #2
Ja, det kunne være et alternativ. Men ikke lige svar på mit spørgsmål.
Avatar billede olebole Juniormester
20. februar 2009 - 11:32 #3
Nej, men nu er der jo heller ingen, der siger, du absolut skal have dit spørgsmål besvaret - specielt ikke, når der kan anvises bedre fremgangsmåder  =)
Avatar billede Slettet bruger
20. februar 2009 - 11:38 #4
Jeg kan sagtens følge dig olebole, men nu vil jeg altså aligevel give ham et svar som han kan bruge, indtil han indser at din løsning er bedre.

Jeg er ikke den store haj til javascript, men det burde være så simpelt som dette.

    valTime = new RegExp("^([1-9]).([0-5][0-9])$");
      if (document.skriv1.tid.value.match(valTime) == null) {
        alert("Skriv tidspunktet i det korrekte format (hh.mm)");
        document.skriv1.tid.focus();
        return false;
      }
Nu skal der stå et tal mellem 1.00 og 9.59.
Avatar billede compac Seniormester
20. februar 2009 - 11:48 #5
Med den løsning accepterer den KUN etcifrede tal foran punktummet.
Jeg ville gerne have, at man skal kunne skrive alle tidspunkter fra 1-24 uden foranstillede nuller.
Avatar billede Slettet bruger
20. februar 2009 - 12:54 #6
Okay, så noget lignende det her

    valTime = new RegExp("^(1*[0-9]|[2][0-3]).([0-5][0-9])$");
      if (document.skriv1.tid.value.match(valTime) == null) {
        alert("Skriv tidspunktet i det korrekte format (hh.mm)");
        document.skriv1.tid.focus();
        return false;
      }
Avatar billede Slettet bruger
20. februar 2009 - 12:56 #7
Hov, undskyld

    valTime = new RegExp("^(1?[0-9]|[2][0-3]).([0-5][0-9])$");
      if (document.skriv1.tid.value.match(valTime) == null) {
        alert("Skriv tidspunktet i det korrekte format (hh.mm)");
        document.skriv1.tid.focus();
        return false;
      }
Ellers kunne der stå 111113.32, og det er jo ikke så godt.
Avatar billede compac Seniormester
20. februar 2009 - 13:25 #8
Det virker helt perfekt.

Jeg kan ikke se, at det skulle være mere brugervenligt med dropdown. Det bliver vel nogle kolosalt lange dropdowns for at få alle tidspunkter med?
Avatar billede olebole Juniormester
20. februar 2009 - 13:41 #9
Tjahh ... Stevie Wonder kan heller ikke se, hans kone er enorm køn. Det kan nu afholde mig fra at se og mene det  ;o)
Avatar billede compac Seniormester
20. februar 2009 - 13:51 #10
Nåh, det kommer jeg åbenbart ikke videre med selvom jeg er åben for argumenter - og viden.
Læg et svar kimsey0.
Avatar billede Slettet bruger
20. februar 2009 - 14:01 #11
Ole, hah.
Avatar billede Slettet bruger
20. februar 2009 - 14:02 #12
Som i, "Hah, det du sagde var sjovt" ikke som i "Hah, jeg vandt".
Avatar billede olebole Juniormester
20. februar 2009 - 14:19 #13
;o)
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester