• Status: Solved
• Priority: Medium
• Security: Public
• Views: 371

# Calculate date difference in YMD format "20081008"

On a submit page, I have 2 Select's - startdate, enddate.
Each holds a calculated value and allows the user to select a startdate and a enddate, submit the form and retrieve data.

Now I need to verify the form before submitting it, that startdate < enddate AND the difference between the dates are <= 4 weeks/31 days.

The function I've made so far is below - but I need osme help on how to verify the max. date difference.

Cheers,
Mark

``````function valiDates(){
var maxtime = 60*60*24*31;
var btn = document.getElementById("submit");
var strSd = document.getElementById("startdate").value;
var strEd = document.getElementById("enddate").value;
var sd = new Date( strSd.substring(0,3) +"/"+ strSd.substring(4,5) +"/"+ strSd.substring(6,7) );
var ed = new Date( strEd.substring(0,3) +"/"+ strEd.substring(4,5) +"/"+ strEd.substring(6,7) );
if (sd > ed ){
btn.disabled = true;
btn.value = 'Slut dato skal være senere end start dato, max 4 uger statistik kan dannes !';
} else {
btn.disabled = false;
btn.value = 'Hent data';
}
}
``````
0
trg_dk
1 Solution

Commented:
``````//Set 1 day in milliseconds
var one_day=1000*60*60*24;

//Calculate difference btw the two dates, and convert to days
var dif = Math.ceil((ed.getTime()-sd.getTime())/one_day);

if(dif > 31) {
btn.disabled = true;
btn.value = '...!';
}
``````
0

Author Commented:
YOU da' man :-)

Thanks for your quick solution - works perfectly !!!
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.