/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
Java Script til dato check ?
Fra : Peter


Dato : 07-01-09 19:30

Hej NG!

Hvor finder man et scrips som kan checke om den samlede dato man via 4
rullemenuer selv har sammensat er korrekt (Ugedag, Dato, Måned, År) Bl.a. så
man ikke vælger højere end d. 28. februar med mindre det er skudår.
Således at man bliver gjort opmærksom at dagens navn ikke passer på datoen,
osv.

hilsen
Peter



 
 
Thomas Vang (07-01-2009)
Kommentar
Fra : Thomas Vang


Dato : 07-01-09 21:18

Du burde kunne bruge følgende - Der er dog ikke ugedag med...:

function getElement(name) {
if(document.getElementById && document.getElementById(name)) {
return document.getElementById(name);
}
else if (document.all && document.all(name)) {
return document.all(name);
}
else if (document.layers && document.layers[name]) {
return document.layers[name];
} else {
return false;
}
}

function checkDate(dayField,monthField,yearField) {
var monthLength = new Array(31,28,31,30,31,30,31,31,30,31,30,31);

var day = parseInt(getElement(dayField).value);
var month = parseInt(getElement(monthField).value);
var year = parseInt(getElement(yearField).value);

if (!day || !month || !year)
return false;

if (year/4 == parseInt(year/4))
monthLength[1] = 29;

if (day > monthLength[month-1])
return false;

var now = new Date();
now = now.getTime(); //NN3

var dateToCheck = new Date();
dateToCheck.setYear(year);
dateToCheck.setMonth(month-1);
dateToCheck.setDate(day);
var checkDate = dateToCheck.getTime();

return checkDate;
}

I dit <form> tag skriver du så noget i stil med:
<form action="side.html" onsubmit="return
checkDate('id-på-day','id-på-måned','id-på-år');">


Og så bliver din dato valideret... Virker også med skudår..

Ved ikke lige mht. at validere med ugedag.. Det rækker mine evner ikke til..

getElement funktionen bruger jeg altid, sikrer at det virker i flere
browsere (ved ikke bare at bruge getElementById kaldet...)

--
/Thomas
"Peter" <petit@mobil.dk> wrote in message
news:4964f4b4$0$56777$edfadb0f@dtext02.news.tele.dk...
> Hej NG!
>
> Hvor finder man et scrips som kan checke om den samlede dato man via 4
> rullemenuer selv har sammensat er korrekt (Ugedag, Dato, Måned, År) Bl.a.
> så
> man ikke vælger højere end d. 28. februar med mindre det er skudår.
> Således at man bliver gjort opmærksom at dagens navn ikke passer på
> datoen, osv.
>
> hilsen
> Peter
>


Stig Johansen (08-01-2009)
Kommentar
Fra : Stig Johansen


Dato : 08-01-09 05:41

Thomas Vang wrote:

> if (year/4 == parseInt(year/4))
> monthLength[1] = 29;

Mangler der ikke en detalje med hvert 4. århundrede ?

Og så lige år 4840, men jeg ved ikke om det stadig gælder.

--
Med venlig hilsen
Stig Johansen

Jens Peter Karlsen (08-01-2009)
Kommentar
Fra : Jens Peter Karlsen


Dato : 08-01-09 17:09

Det gør der. Spørgsmålet er dog om det betyder noget da der jo er
temmelig lang tid til det er relevant, men det er jo let nok lige at
tilføje det check:

if (year/4 == parseInt(year/4))
monthLength[1] = 29;

Ændres til at kalde denne funktion:

function isLeapYear(year){
if (year % 100 == 0) {
if (year % 400 == 0) { return 29; }
}
else {
if ((year % 4) == 0) { return = 29; }
}
return 28;
}


År 4840 ligger så langt ude at man aldrig ved om det nogensinde bliver
relevant. Bruger vi samme tidsregning (Vi har skiftet et par gange
bare de sidste par årtusinder)? Eksisterer jorden stadig ?

PS. jeg synes det er bedre at bruge modulus til sådan en beregning.

Forklaring på funktionen (springes over af dem der er fortrolige med
scripts):

Først checkes om året er helt deleligt med 100 og hvis det er, checkes
om det så også er helt deleligt med 400 og i så fald returneres 29.
Hvis det første ikke var sandt checkes om året er helt deleligt med 4
og hvis det er returneres igen 29.
Til sidst returneres 28 hvis intet af det første var sandt.

Regards Jens Peter Karlsen.

On Thu, 08 Jan 2009 05:41:03 +0100, Stig Johansen <wopr.dk@gmaill.com>
wrote:

>Mangler der ikke en detalje med hvert 4. århundrede ?
>
>Og så lige år 4840, men jeg ved ikke om det stadig gælder.

Erik Ginnerskov (09-01-2009)
Kommentar
Fra : Erik Ginnerskov


Dato : 09-01-09 23:48

Jens Peter Karlsen wrote:

> År 4840 ligger så langt ude at man aldrig ved om det nogensinde bliver
> relevant.

Åh, hvad, sølle 2831 år. Planlægger du at lægge dig til at dø inden da?

> Bruger vi samme tidsregning (Vi har skiftet et par gange
> bare de sidste par årtusinder)?

Har vi? Mig bekendt er der kun blevet foretaget nogle justeringer af årets
længde, så det kommer til at passe med den faktiske omløbstid om solen.
Vesten benytter samme tidsregning endnu, som romerne indførte for 2009 år
siden.

> Eksisterer jorden stadig ?

Se, det er det springende punkt. Det lader til at nogle fraktioner af
menneskeheden bare ikke _vil_ fred, andre har nul respekt for menneskeliv
hvis der er penge i skidtet. Samtidig bliver udbredelsen af
masseødelæggelsesvåben desværre stadig større og hvornår falder disse i
hænderne på de slemme drenge?

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://ginnerskov.dk
http://vestfynswebdesign.dk - http://html-faq.dk


Jens Peter Karlsen (10-01-2009)
Kommentar
Fra : Jens Peter Karlsen


Dato : 10-01-09 03:16

Den Gregorianske kalender kom til i 1582 (opkaldt efter Pave
Gregorious XIII). Den blev dog først indført her i Norden i 1700.
Herhjemme sprang vi et antal dage i nummereringen af dage på en gang
24 Feb. blev afløst af 1. Marts.
Sverige ville være lidt specielle så de besluttede i stedet at springe
alle skudår over indtil 1740.

Kan du se et mareridt det havde været at udregne kalender angivelser
for os på det tidspunkt?.

Regards Jens Peter Karlsen.

On Fri, 9 Jan 2009 23:47:59 +0100, "Erik Ginnerskov"
<erik.ginnerskov@live.dk> wrote:

>Har vi? Mig bekendt er der kun blevet foretaget nogle justeringer af årets
>længde, så det kommer til at passe med den faktiske omløbstid om solen.
>Vesten benytter samme tidsregning endnu, som romerne indførte for 2009 år
>siden.

Erik Ginnerskov (10-01-2009)
Kommentar
Fra : Erik Ginnerskov


Dato : 10-01-09 17:54

Jens Peter Karlsen wrote:
> Den Gregorianske kalender kom til i 1582 (opkaldt efter Pave
> Gregorious XIII).

Afløste den Julianske kalender (fra romertiden) og ændrede lidt på
årslængden og indførte skuddage.

> Den blev dog først indført her i Norden i 1700.
> Herhjemme sprang vi et antal dage i nummereringen af dage på en gang
> 24 Feb. blev afløst af 1. Marts.
> Sverige ville være lidt specielle så de besluttede i stedet at springe
> alle skudår over indtil 1740.

Et held at den internationale kommunikation dengang ikke havde samme omfang
som i dag.

> Kan du se et mareridt det havde været at udregne kalender angivelser
> for os på det tidspunkt?.

Ja for fa.... da. Men grundlæggende er det samme årsnummerering som for godt
2000 år siden - selv om forskellige lande i perioder har haft lidt
kalenderrod.

Før indførelsen af den nu brugte tidsregning havde romerne den sædvane at
starte en ny tidsregning hver gang en ny regent (kejser eller president
efter tidens praksis). Men for et par tusinde år siden indså man det
praktiske i at fortsætte den aktuelle tidsregning trods regentskifte. Det
har så ført til at vi i Vesten har år 2009 nu.

I den muslimske verden er de omkring 700 år bagud, da de går fra profetens
fødsel.

I Kina er de et par milleniums forud for os - jeg antager at den første
kejser i Kina startede deres tidsregning.

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://ginnerskov.dk
http://vestfynswebdesign.dk - http://html-faq.dk


Lasse Reichstein Nie~ (08-01-2009)
Kommentar
Fra : Lasse Reichstein Nie~


Dato : 08-01-09 06:55

"Peter" <petit@mobil.dk> writes:

> Hvor finder man et scrips som kan checke om den samlede dato man via 4
> rullemenuer selv har sammensat er korrekt (Ugedag, Dato, Måned, År) Bl.a. så
> man ikke vælger højere end d. 28. februar med mindre det er skudår.
> Således at man bliver gjort opmærksom at dagens navn ikke passer på datoen,
> osv.

Prøv:

function checkDate(date, month, year, dayOfWeek) {
// day_of_week er et tal mellem 0 og 6 (søndag til lørdag)
month -= 1; // Date's måned starter ved 0 for Januar
var d = new Date(0);
d.setYear(year);
d.setMonth(month);
d.setDate(date);
return d.getMonth() == month &&
d.getDate() == date &&
d.getDay() == dayOfWeek;
}

Det er dog spild at lade folk indtaste både dato og ugedag, når du
selv kan regne ugedagen ud givet datoen. Så er det flinkere at beregne
ugedagen og automatisk fylde feltet ud.

/L
--
Lasse Reichstein Holst Nielsen
DHTML Death Colors: <URL:http://www.infimum.dk/HTML/rasterTriangleDOM.html>
'Faith without judgement merely degrades the spirit divine.'

Peter (08-01-2009)
Kommentar
Fra : Peter


Dato : 08-01-09 10:23


"Lasse Reichstein Nielsen" <lrn.unread@gmail.com> skrev i en meddelelse
news:tz8atk8e.fsf@gmail.com...

> Prøv:
>
> function checkDate(date, month, year, dayOfWeek) {
> // day_of_week er et tal mellem 0 og 6 (søndag til lørdag)
> month -= 1; // Date's måned starter ved 0 for Januar
> var d = new Date(0);
> d.setYear(year);
> d.setMonth(month);
> d.setDate(date);
> return d.getMonth() == month &&
> d.getDate() == date &&
> d.getDay() == dayOfWeek;
> }
>
> Det er dog spild at lade folk indtaste både dato og ugedag, når du
> selv kan regne ugedagen ud givet datoen. Så er det flinkere at beregne
> ugedagen og automatisk fylde feltet ud.


Grunden til at jeg ikke kun vil have datoen oplyst, men også dagens navn er
at vi nogle gange har fået datoen f.eks. den 11 - Dette viste sig at være en
fejlskrivning som senere viste sig burde havde været den 10 - Hvis kunden
også fra starten også havde nævnt dagens navn kunne vi udfra at
oplysningerne ikke passede sammen, straks se at et eller anden var galt.
Derfor!
Håber dit script også kan "sige fra" hvis ikke udedag og dato ikke passer
sammen.

hilsen
Peter



Peter (09-01-2009)
Kommentar
Fra : Peter


Dato : 09-01-09 21:19


>> Prøv:
>>
>> function checkDate(date, month, year, dayOfWeek) {
>> // day_of_week er et tal mellem 0 og 6 (søndag til lørdag)
>> month -= 1; // Date's måned starter ved 0 for Januar
>> var d = new Date(0);
>> d.setYear(year);
>> d.setMonth(month);
>> d.setDate(date);
>> return d.getMonth() == month &&
>> d.getDate() == date &&
>> d.getDay() == dayOfWeek;
>> }
>>
>> Det er dog spild at lade folk indtaste både dato og ugedag, når du
>> selv kan regne ugedagen ud givet datoen. Så er det flinkere at beregne
>> ugedagen og automatisk fylde feltet ud.
>
>
> Grunden til at jeg ikke kun vil have datoen oplyst, men også dagens navn
> er at vi nogle gange har fået datoen f.eks. den 11 - Dette viste sig at
> være en fejlskrivning som senere viste sig burde havde været den 10 - Hvis
> kunden også fra starten også havde nævnt dagens navn kunne vi udfra at
> oplysningerne ikke passede sammen, straks se at et eller anden var galt.
> Derfor!
> Håber dit script også kan "sige fra" hvis ikke udedag og dato ikke passer
> sammen.

Er det er JavaScript ?. Selv om jeg er "newbee" mener jeg at kunne se at det
ikke har den indledning og afslutning i koden som er kendetegnende for
JavaScript. Hvad er det så ? Hvor i HTML-koden indsættes denne kode ?

hilsen
Peter



Erik Ginnerskov (09-01-2009)
Kommentar
Fra : Erik Ginnerskov


Dato : 09-01-09 22:55

Peter wrote:

>>> function checkDate(date, month, year, dayOfWeek) {
>>> // day_of_week er et tal mellem 0 og 6 (søndag til lørdag)
>>> month -= 1; // Date's måned starter ved 0 for Januar
>>> var d = new Date(0);
>>> d.setYear(year);
>>> d.setMonth(month);
>>> d.setDate(date);
>>> return d.getMonth() == month &&
>>> d.getDate() == date &&
>>> d.getDay() == dayOfWeek;
>>> }

> Er det er JavaScript ?. Selv om jeg er "newbee" mener jeg at kunne se
> at det ikke har den indledning og afslutning i koden som er
> kendetegnende for JavaScript.

Lasse har undladt at skrive det start- og sluttag, der skal omgærde et
internt (skrevet i sidens kildekode) javascript. Men det er stadig
javascript.

Javascript kan laves på to måder:

Med <script type="text/javascript"> først og </script>
sidst og med et script som ovennævnte derimellem.

Med <script type="text/javascript" src="mitscript.js"></script>
i sidens kildekode og så et script som ovennævnte lagt i en
ekstern fil - her kaldet mitscript.js, scriptfilen skal hedde .js
'til efternavn'.

Skal scriptet kun bruges på en enkelt side, kan første metode bruges og man
kan evt. vælge at se stort på hvis siden af den grund ikke validerer eller
eventuelt lægge nogle CDATA-linjer ind:

http://hjemmesideskolen.dk/html/javascript.asp

Skal scriptet bruges på mere end en side, er det en klar fordel at vælge
metode to, da man så kun har et sted at skulle rette, hvis der skal ændres i
scriptet. Men metode to kan også være løsningen, der får en side til at
validere trods scriptet (forudsat selvfølgelig at intet andet er ikke-validt
i kildekoden).

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://ginnerskov.dk
http://vestfynswebdesign.dk - http://html-faq.dk


Peter (09-01-2009)
Kommentar
Fra : Peter


Dato : 09-01-09 23:24

> Lasse har undladt at skrive det start- og sluttag, der skal omgærde et
> internt (skrevet i sidens kildekode) javascript. Men det er stadig
> javascript.
>
> Javascript kan laves på to måder:
>
> Med <script type="text/javascript"> først og </script>
> sidst og med et script som ovennævnte derimellem.
>
> Med venlig hilsen
> Erik Ginnerskov
> http://hjemmesideskolen.dk - http://ginnerskov.dk
> http://vestfynswebdesign.dk - http://html-faq.dk


Hej Erik!

Tak for dit indlæg. Jeg har nu placeret scriptet mellem <body> og </body> og
uploadet formularsiden. Men det virket slet ikke Har jeg lavet en fejl
?

<script type="text/javascript">

function checkDate(date, month, year, dayOfWeek) {
// day_of_week er et tal mellem 0 og 6 (søndag til lørdag)
month -= 1; // Date's måned starter ved 0 for Januar
var d = new Date(0);
d.setYear(year);
d.setMonth(month);
d.setDate(date);
return d.getMonth() == month &&
d.getDate() == date &&
d.getDay() == dayOfWeek;
}

</script>



Som det kan ses af nedenstående expl. prøvede jeg at "foregive" at 1. januar
var en mandag (burde være en torsdag):

Dette_er_en: Forespørgsel
Dag: Mandag
Dato: 1.
Mdr: Januar
Året: 2009

I dette expl. valgte jeg datoen forkert (ingen 29. febr. 2009):

Dette_er_en: Forespørgsel
Dag: Mandag
Dato: 29.
Mdr: Februar
Året: 2009

Hvad er problemet. Hvad er galt ?

hilsen
Peter




Peter (09-01-2009)
Kommentar
Fra : Peter


Dato : 09-01-09 23:38

Hej Erik igen!

Skal jeg "nummerere" de 4 rullemenuer i formularen med nedenstående tal for
at få det "til at virke" ?
et tal mellem 0 og 6 (søndag til lørdag)
Date's måned starter ved 0 for Januar

hilsen
Peter


<script type="text/javascript">
function checkDate(date, month, year, dayOfWeek) {
// day_of_week er et tal mellem 0 og 6 (søndag til lørdag)
month -= 1; // Date's måned starter ved 0 for Januar
var d = new Date(0);
d.setYear(year);
d.setMonth(month);
d.setDate(date);
return d.getMonth() == month &&
d.getDate() == date &&
d.getDay() == dayOfWeek;
}
</script>




Erik Ginnerskov (09-01-2009)
Kommentar
Fra : Erik Ginnerskov


Dato : 09-01-09 23:49

Peter wrote:

> Tak for dit indlæg. Jeg har nu placeret scriptet mellem <body> og
> </body> og uploadet formularsiden. Men det virket slet ikke Har
> jeg lavet en fejl ?

Så vidt jeg kan se, tjekker Lasses script ikke for den slags
fejlindtastninger. Prøv at kigge på jens Peters.

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://ginnerskov.dk
http://vestfynswebdesign.dk - http://html-faq.dk


Peter (10-01-2009)
Kommentar
Fra : Peter


Dato : 10-01-09 00:15


> Så vidt jeg kan se, tjekker Lasses script ikke for den slags
> fejlindtastninger. Prøv at kigge på jens Peters.
>
> --
> Med venlig hilsen
> Erik Ginnerskov
> http://hjemmesideskolen.dk - http://ginnerskov.dk
> http://vestfynswebdesign.dk - http://html-faq.dk


Hej igen!

Nu har jeg anvendt Jens Peters script:

<script type="text/javascript">
function isLeapYear(year){
if (year % 100 == 0) {
if (year % 400 == 0) { return 29; }
}
else {
if ((year % 4) == 0) { return = 29; }
}
return 28;
}
</script>

Når jeg tester formularen "slipper" den 29. februar alligevel igennem.

Dette_er_en: Forespørgsel
Dag: Mandag
Dato: 29.
Mdr: Februar
Året: 2009

Hvor ligger problemet?

Her er HTML-koden som cript'et skal arbejde sammen med:

</b>Hvilken dag<b> </b>?</font><b><font size="2"><br>
<!--webbot bot="Validation" s-display-name="Dag" b-value-required="TRUE"
b-disallow-first-item="TRUE" --><select size="1" name="Dag" tabindex="3">
<option>_______</option>
<option>Mandag</option>
<option>Tirsdag</option>
<option>Onsdag</option>
<option>Torsdag</option>
<option>Fredag</option>
<option>Lørdag</option>
<option>Søndag</option>
</select><!--webbot bot="Validation" s-display-name="Dato"
b-value-required="TRUE" b-disallow-first-item="TRUE" --><select size="1"
name="Dato" tabindex="4">
<option>___</option>
<option>1.</option>
<option>2.</option>
<option>3.</option>
<option>4.</option>
<option>5.</option>
<option>6.</option>
<option>7.</option>
<option>8.</option>
<option>9.</option>
<option>10.</option>
<option>11.</option>
<option>12.</option>
<option>13.</option>
<option>14.</option>
<option>15.</option>
<option>16.</option>
<option>17.</option>
<option>18.</option>
<option>19.</option>
<option>20.</option>
<option>21.</option>
<option>22.</option>
<option>23.</option>
<option>24.</option>
<option>25.</option>
<option>26.</option>
<option>27.</option>
<option>28.</option>
<option>29.</option>
<option>30.</option>
<option>31.</option>
</select><!--webbot bot="Validation" s-display-name="Måned"
b-value-required="TRUE" b-disallow-first-item="TRUE" --><select size="1"
name="Mdr" tabindex="5">
<option>__________</option>
<option>Januar</option>
<option>Februar</option>
<option>Marts</option>
<option>April</option>
<option>Maj</option>
<option>Juni</option>
<option>Juli</option>
<option>August</option>
<option>September</option>
<option>Oktober</option>
<option>November</option>
<option>December</option>
</select><!--webbot bot="Validation" s-display-name="År"
b-value-required="TRUE" b-disallow-first-item="TRUE" --><select size="1"
name="Året" tabindex="6">
<option>____</option>
<option>2009</option>
<option>2010</option>
<option>2011</option>
</select>

hilsen
Peter






Lasse Reichstein Nie~ (10-01-2009)
Kommentar
Fra : Lasse Reichstein Nie~


Dato : 10-01-09 11:24

"Peter" <petit@mobil.dk> writes:

> Tak for dit indlæg. Jeg har nu placeret scriptet mellem <body> og </body> og
> uploadet formularsiden. Men det virket slet ikke Har jeg lavet en fejl
> ?

Sandsynligvis. Kunne du give et link til siden, så kan det være vi kan se
hvad den er?

Først og fremmest: Hvordan kalder du funktionen (gør du overhovedet?)

Den traditionelle måde at gøre det på er i onsubmit på din form:

<form action="...hvad-du-nu-gør..."
onsubmit="function selectValue(select) {
return select.options[select.selectedIndex].value;
}
var elems = this.elements;
if(!checkDate(+selectValue(elems['date']),
+selectValue(elems['month']),
+selectValue(elems['year']),
+selectValue(elems['weekday'])) {
alert('Din dato er ikke gyldig');
return false;
}">
hvor du har dine select-elementer ("rullemenu'er") i formen som fx:

<select name="date">
<option>1</option>
<option>2</option>
...
<option>31</option>
</select> /
<select name="month">
<option value="1">Januar</option>
<option value="2">Februar</option>
...
<option value="12">December</option>
</select> /
<select name="year">
<option>2010</option>
<option>2009</option>
...
<option>1900</option>
</select>,
<select name="weekday">
<option value="1">Mandag</option>
<option value="2">Tirsdag</option>
...
<option value="6">Lørdag</option>
<option value="0">Søndag</option>
</select>


Jeg har bikset et hurtigt eksempel sammen på
http://www.infimum.dk/privat/week-validation.html

> Som det kan ses af nedenstående expl. prøvede jeg at "foregive" at 1. januar
> var en mandag (burde være en torsdag):
>
> Dette_er_en: Forespørgsel
> Dag: Mandag
> Dato: 1.
> Mdr: Januar
> Året: 2009
>
> I dette expl. valgte jeg datoen forkert (ingen 29. febr. 2009):
>
> Dette_er_en: Forespørgsel
> Dag: Mandag
> Dato: 29.
> Mdr: Februar
> Året: 2009
>
> Hvad er problemet. Hvad er galt ?

Hvad gjorde du (må vi se siden)?
Hvad sker der?
Hvad forventede du der skulle ske?

(Prøv evt. at læse http://www.infimum.dk/HTML/hjaelpmig.html )

Held og lykke
/L
--
Lasse Reichstein Holst Nielsen
DHTML Death Colors: <URL:http://www.infimum.dk/HTML/rasterTriangleDOM.html>
'Faith without judgement merely degrades the spirit divine.'

Peter (10-01-2009)
Kommentar
Fra : Peter


Dato : 10-01-09 12:14


"Lasse Reichstein Nielsen" <lrn.unread@gmail.com> skrev i en meddelelse
news:3afrwjb8.fsf@gmail.com...
> "Peter" <petit@mobil.dk> writes:
>
>> Tak for dit indlæg. Jeg har nu placeret scriptet mellem <body> og </body>
>> og
>> uploadet formularsiden. Men det virket slet ikke Har jeg lavet en
>> fejl
>> ?
>
> Sandsynligvis. Kunne du give et link til siden, så kan det være vi kan se
> hvad den er?

www.morgenmusikken.dk/formular.htm

> Først og fremmest: Hvordan kalder du funktionen (gør du overhovedet?)

Jeg er fuldstændig "newbee" vedr. Java Script !

> Den traditionelle måde at gøre det på er i onsubmit på din form:
>
> <form action="...hvad-du-nu-gør..."
> onsubmit="function selectValue(select) {
> return select.options[select.selectedIndex].value;
> }
> var elems = this.elements;
> if(!checkDate(+selectValue(elems['date']),
> +selectValue(elems['month']),
> +selectValue(elems['year']),
> +selectValue(elems['weekday'])) {
> alert('Din dato er ikke gyldig');
> return false;
> }">
> hvor du har dine select-elementer ("rullemenu'er") i formen som fx:
>
> <select name="date">
> <option>1</option>
> <option>2</option>
> ...
> <option>31</option>
> </select> /
> <select name="month">
> <option value="1">Januar</option>
> <option value="2">Februar</option>
> ...
> <option value="12">December</option>
> </select> /
> <select name="year">
> <option>2010</option>
> <option>2009</option>
> ...
> <option>1900</option>
> </select>,
> <select name="weekday">
> <option value="1">Mandag</option>
> <option value="2">Tirsdag</option>
> ...
> <option value="6">Lørdag</option>
> <option value="0">Søndag</option>
> </select>
>
>
> Jeg har bikset et hurtigt eksempel sammen på
> http://www.infimum.dk/privat/week-validation.html
>
>> Som det kan ses af nedenstående expl. prøvede jeg at "foregive" at 1.
>> januar
>> var en mandag (burde være en torsdag):
>>
>> Dette_er_en: Forespørgsel
>> Dag: Mandag
>> Dato: 1.
>> Mdr: Januar
>> Året: 2009
>>
>> I dette expl. valgte jeg datoen forkert (ingen 29. febr. 2009):
>>
>> Dette_er_en: Forespørgsel
>> Dag: Mandag
>> Dato: 29.
>> Mdr: Februar
>> Året: 2009
>>
>> Hvad er problemet. Hvad er galt ?
>
> Hvad gjorde du (må vi se siden)?
> Hvad sker der?
> Hvad forventede du der skulle ske?
>
> (Prøv evt. at læse http://www.infimum.dk/HTML/hjaelpmig.html )
>
> Held og lykke
> /L
> --
> Lasse Reichstein Holst Nielsen
> DHTML Death Colors:
> <URL:http://www.infimum.dk/HTML/rasterTriangleDOM.html>
> 'Faith without judgement merely degrades the spirit divine.'



Søg
Reklame
Statistik
Spørgsmål : 177579
Tips : 31968
Nyheder : 719565
Indlæg : 6409073
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste