@ndersMedlem sedan juni 200032 969 inlägg Hej, vänner. :)
Jag har variabler som innehåller år, månad och dag, och vill veta om detta datum är inom den närmaste veckan. Hur gör jag?
intYear = 2004;
intMonth = 2;
intDay = 14;
if (datum_skapat_av_info_ovan <= dagens_datum_plus_7_dagar) {
// Fjohooo! :)
}
else {
// Fjähäää! :(
}
Månad 2 är alltså mars för den som undrar. ;)
Mvh och tpf,
J.N.Medlem sedan apr. 20031 660 inlägg HEJ!
Eftersom jag får datum via sex dropdowns ((yy++mm+dd)x2) löser jag det genom att sätta ihop datumet manuellt, och jämför dem.
Så enkelt är det faktiskt!
pa = new Date(form.pa_ar.value, form.pa_man.value-1, form.pa_dag.value);
form.hid_pa.value = form.pa_ar.value + "-" + form.pa_man.value + "-" + form.pa_dag.value;
av = new Date(form.av_ar.value, form.av_man.value-1, form.av_dag.value);
form.hid_av.value = form.av_ar.value + "-" + form.av_man.value + "-" + form.av_dag.value;
if (av < pa){
alert("The removal-date must be after the release-date.");
form.av_dag.focus();
return (false);
}
lägger in det sammansatta datumet i hidden fields för nästa sida
<input type="hidden" name="hid_av" value=""><input type="hidden" name="hid_pa" value="">
@ndersMedlem sedan juni 200032 969 inlägg Hur får jag veta om givet datum är inom en vecka från dagens datum?
Kan man bara köra en liten subtraktion med datumobjekten?
J.N.Medlem sedan apr. 20031 660 inlägg HEJ!
Jag ser nu att jag endast svarade på halva frågan, om ens det :OO
Jag har aldrig behövt prova om javascript-Date fixar minskningar eller ökningar på samma enkla sätt som i VB.
Du får troligen räkna om båda datum till millisekunder och sedan kontrollera om den siffran är större/mindre?
Detta svar har faktiskt inget med mitt tidigare svar att göra, förutom < / > :r
SPiNMedlem sedan mars 20007 896 inlägg nu = new Date();
omenvecka = new Date( nu.getYear(), nu.getMonth(), nu.getDate()+8 );
inmatat = new Date( "2004", "March", "16" );
if( inmatat < omenvecka ) {
/* Fjo. */
} else {
/* Fjä. */
}
:q :)
@ndersMedlem sedan juni 200032 969 inlägg Tack, SPiN!
Det fjungerar finfint! :bire
@ndersMedlem sedan juni 200032 969 inlägg Det fjungerar finfint... I IE.
Men i Mozilla fjungerar det inte alls. ;)
Så här ser det ut:
nu = new Date();
dteValidDate = new Date( nu.getYear(), nu.getMonth(), nu.getDate()+8 );
dteThisDate = new Date( 2004, 2, 15 );
if (dteThisDate < dteValidDate) {
// hit ska vi ju komma!
} else {
// men vi hamnar här med geckoläsare!
}
Mvh
SPiNMedlem sedan mars 20007 896 inlägg nu = new Date();
dteValidDate = new Date( nu.getYear(), nu.getMonth()+1, nu.getDate()+8 );
dteThisDate = new Date( 2004, 2, 15 );
if (dteThisDate < dteValidDate) {
// hit ska vi ju komma!
} else {
// men vi hamnar här med geckoläsare!
}
Månad ska tydligen plussas på med 1 för att få nuvarande månad, enligt standard. Annars vet jag inte varför det inte fungerar - det följer standard till punkt och pricka.
@ndersMedlem sedan juni 200032 969 inlägg Hmm. Knepigt. Så här ser datumen ut:
Mozilla Fajerbörd skrev:
dteValidDate: Wed Mar 19 0104 00:00:00 GMT+0100
dteThisDate: Mon Mar 15 2004 00:00:00 GMT+0100
Internet Explorer skrev:
dteValidDate: Fri Mar 19 00:00:00 UTC+0100 2004
dteThisDate: Mon Mar 15 00:00:00 UTC+0100 2004
Varför blir det fel år när jag använder Firebird???
nikoMedlem sedan juni 20022 599 inlägg
Varför blir det fel år när jag använder Firebird???
Därför att FireBird returnerar "104" (antal år sedan 1900) i new Date().getYear(). Medan IE inte gör det.
@ndersMedlem sedan juni 200032 969 inlägg Jo, men frågan är varför. Verkar extremt kass.
Hur gör jag då detta script oberoende av om man använder IE eller geckoläsare?
dectgapMedlem sedan sep. 20021 655 inlägg @ndersMedlem sedan juni 200032 969 inlägg Jamen sådärja! :D
Tack för hjälpen SPiN, niko och dectgap! (y)
Mvh