Avatar billede camp Nybegynder
18. juni 2004 - 13:12 Der er 6 kommentarer og
2 løsninger

Kan I hjælpe mig med en valideringsfunktion?

Jeg er ingen ørn til JS, så jeg vil bede pænt om hjælp til at lave en valideringsfunktion jeg kan sætte ind i min egen HTML kode.

I forbindelse med et input-text felt hvor man skal indtaste en dato vil jeg gerne validere om formatet er indtastet korrekt.

Brugbare formater er:  d-m-åååå og dd-mm-åååå

Jeg forestiller mig en alert med besked om at formatet ikke
er korrekt hvis man indtaster dato på andre måder.


I øvrigt må I gerne give et tip, hvis I ved hvordan jeg
kan have en pop-up kalender som vil virke selvom brugeren har
en pop-up killer eller samme funktion i browser/toolbar.
Skal man ud i noget flash eller layer?
Avatar billede skovenborg Nybegynder
18. juni 2004 - 13:28 #1
hvis du kan leve med den ene mulighed har roenving et rigtigt godt bud:
http://roenving.users.whitehat.dk/index.html?/WD3Input.html
Avatar billede grunken Nybegynder
18. juni 2004 - 13:29 #2
<script type="text/javascript">
function check(e){
if(!e.value.match(/^(0?[1-9]|[12]\d|3[01])[\/\-](0?[1-9]|1[0-2])[\/\-](19|20)?(\d{2})$/))alert('datoen er ikke gyldig');
}
</script>

<input type="text" onchange="check(this);">

til det sidste ?, så er det yderst sjældent at popupkillere stopper for popupper som brugeren selv har bedt om at åbne!

Men for at være 100% sikker, så har du ret i at løsningen er layer :o)
Avatar billede camp Nybegynder
18. juni 2004 - 14:20 #3
Grunken:  Den er næsten hjemme, men skriver jeg 19-06-04 så godkender den. Års-formatet SKAL være 4 cifre, kan vi lave det?
(19xx ikke aktuelt mere :-)
Avatar billede grunken Nybegynder
18. juni 2004 - 14:28 #4
Jeps da :o)

<script type="text/javascript">
function check(e){
if(!e.value.match(/^(0?[1-9]|[12]\d|3[01])[\/\-](0?[1-9]|1[0-2])[\/\-]20(\d{2})$/))alert('datoen er ikke gyldig');
}
</script>
Avatar billede camp Nybegynder
18. juni 2004 - 14:32 #5
Fedt, 1000 tak!
Laver du ikke et svar?
Avatar billede grunken Nybegynder
18. juni 2004 - 14:33 #6
-og hvis du istedet vil bruge den på en form onsubmit - så skal der også lige returneres true og false

<script type="text/javascript">
function check(e){
if(!e.value.match(/^(0?[1-9]|[12]\d|3[01])[\/\-](0?[1-9]|1[0-2])[\/\-]20(\d{2})$/))
{
alert('datoen er ikke gyldig');
return false
}
return true;
}
</script>

<form onsubmit="return check(this)">
<input type="text" name="dato"><br />
<input type="submit" value="send">
</form>
Avatar billede grunken Nybegynder
18. juni 2004 - 14:35 #7
-og jeg smider et svar :o)

men tag lige størstedelen af points selv, dette må betegnes som et middel spørgsmål, så giv mig 30 og tag de 80 selv :o)

-og så vil jeg lige daffe ind til radiohuset og høre kashmir :o)
Avatar billede camp Nybegynder
18. juni 2004 - 14:36 #8
80 til mig
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