02. november 2008 - 18:42Der er
4 kommentarer og 1 løsning
Dato validering
Jeg skal finde ud af om en angivet dato er større eller mindre end datoen på næstkommende lørdag og jeg troede i min naivitet at det var lige ud af landevejen - MEN nej så let gik det ikke. Er der nogen det kan se hvad jeg gør forkert.
var MinDato = "01-11-2008" // den indtastede dato var udgivDato = new Date(); var Idag = UdgivDato.getDay(); var dagdiff = 6 - Idag // ugens lørdag minus idag udgivDato = udgivDato + dagdiff // antal dage til på lørdag if () { udgivDato < MinDato alert("Næste lørdag er større end. "+MinDato) }
Hvorfor buger du slet ikke den indtastede dato som dato ?-)
-- for når du skal sammenligne datoer i javascript kan det kun fornuftigt gøres ved at sammenligne Date-objekters tidsstempel, så f.eks.
var MinDato = "01-11-2008"; // den indtastede dato MinDato = MinDato.split(/[ \/\.-]/); // del dato i tre; tilladte tegn: mellemrum og /.- MinDato = new Date(+MinDato[2], +MinDato[1]-1, +MinDato[0]);//måneder er index 0-11 var UdgivDato = new Date(); var dagNr = UdgivDato.getDay(); var datediff = 6 - dagNr; UdgivDato.setDate(UdgivDato.getDate() + datediff); if(UdgivDato.getTime() < MinDato.getTime()){ alert("Næste lørdag er senere end: " + MinDato.toLocaleDateString()) }
- der var så også en smule problemer med små/store bogstaver !-)
OK, MinDato kunne altså ikke bruge direkte men skulle skilles ad, det forklarer jo sagen (det med små/store bogstaver er bare skrivefejl som er rettet). Det er altså dejligt med så dygtige "venner" ude i den store verden - tak for hjælpen. Smider du et svar, så jeg kan godkende din løsning. Hilsen Preben
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.