0

anyone can help me....how to validate javascript date for this problem:

user select the start date and end date will be chosen to be more than 90 day from the start date.user can send form if end date below 90day...

from date code :
<input name="fromDate" type="text" id="fromDate" size="10" maxlength="10" onChange="">
<a href="#" name="anchorFrmDate" id="anchorFrmDate" onClick="calFrmDate.select(document.forms[0].fromDate,anchorFrmDate,'dd/MM/yyyy'); return false;">DATE</a>

to date code:
<input name="Todate" type="text" id="Todate" size="10" maxlength="10" onChange="">
a href="#" onClick="calToDte.select(document.forms[0].Todate,'anchorToDte','dd/MM/yyyy'); return false;" name="'anchorToDte'" id="'anchorToDte'"><strong>DATE</strong></a>

I've tried and my code below ... but do not succeed ... which part that i make Mistake

function checkDateRange(fromDate, Todate) { 
   // Parse the entries 
   var startDate = Date.parse(fromDate); 
   var endDate = Date.parse(Todate); 
   // Make sure they are valid 
    if (isNaN(startDate)) { 
      alert("The start date provided is not valid, please enter a valid date."); 
      return false; 
   } 
   if (isNaN(endDate)) { 
       alert("The end date provided is not valid, please enter a valid date."); 
       return false; 
   } 
   // Check the date range, 86400000 is the number of milliseconds in one day 
   var difference = (endDate - startDate) / (7776000000); 
   if (difference < 0) { 
       alert("The start date must come before the end date."); 
       return false; 
   } 
   if (difference <= 1) { 
       alert("The range must be at least seven days apart."); 
       return false; 
    } 
   return true; 
}
Sampson
  • 265,109
  • 74
  • 539
  • 565
rick
  • 1
  • 1

1 Answers1

0

Here is a rough sketch:

var startDateText = ...
var NINETY_DAYS = 1000 * 3600 * 24 * 90;
var startDate = new Date(startDateText);
var maxEndDate = startDate.getTime() + NINETY_DAYS;
..
var endDateText = ...
var endDate = new Date(endDateText);
if (endDate.getTime() > maxEndDate) {
    Window.alert("Too late");
}
Dean Povey
  • 9,256
  • 1
  • 41
  • 52