Skip to main content
Inspiring
Feb 19, 2019 8:22 PM UTC
Answered

Date Comparison Script

I have multiple date fields, ie:

     Date.0

     Date.1

     …

     Date.5

     Date.6

These are formatted mm/dd/yyyy

In the custom validation script, after Date.0, I use the following to get the current number of the date field:

     var str = event.target.name;

     var res = str.charAt(str.length-1);

I then use this.getField("0." + (res-1)).value to compare against event.value.

What want to do is:

  1. Compare the two dates to determine if the date just entered pre-dates the preceding date.
  2. And, if it does, serve up:  app.alert("The date you entered is invalid. Please enter a date that does not pre-date the previous entry date." ,0);

I would very much appreciate help in getting a working script.

Thank you

This topic is closed to new replies. Start a new post to keep the conversation going.
Thom Parker
Thom ParkerCorrect answer
Community Expert
Feb 19, 2019 8:41 PM UTC

Date comparisons in JavaScript are easy, as long as you can correctly parse the date.  If the format you've specified is consistent, then it's even easier.

Here's an example:

var strDate1 = "2/11/2019";

var strDate2 = "2/12/2019";

// Create the actual date objects

var date1 = new Date(strDate1);

var date2 = new Date(strDate2);

// Do the comparison

if(date2 > date1)

  app.alert("Date 2 is later than date 1");

Very simple

Thom Parker - Software Developer at PDFScriptingUse the Acrobat JavaScript Reference early and often

4 replies

Thom Parker
Community Expert
Thom ParkerCommunity ExpertCorrect answer
Community Expert
Feb 19, 2019 8:41 PM UTC

Date comparisons in JavaScript are easy, as long as you can correctly parse the date.  If the format you've specified is consistent, then it's even easier.

Here's an example:

var strDate1 = "2/11/2019";

var strDate2 = "2/12/2019";

// Create the actual date objects

var date1 = new Date(strDate1);

var date2 = new Date(strDate2);

// Do the comparison

if(date2 > date1)

  app.alert("Date 2 is later than date 1");

Very simple

Translate
Thom Parker - Software Developer at PDFScriptingUse the Acrobat JavaScript Reference early and often
Inspiring
Feb 19, 2019 9:15 PM UTC

THANK YOU!

Translate
Inspiring
Feb 19, 2019 9:23 PM UTC

Hmmmmmm......seems something is still wrong.

var str = event.target.name;

var res = str.charAt(str.length-1);

var CDate = this.getField("0." + res).value;

var LDate = < this.getField("0." + (res-1)).value;

var date1 = new Date(CDate);

var date2 = new Date(LDate);

if (date1 < date2) {

  1. app.alert("This date is before the last date." ,0);

}

Translate