Skip to main content
Inspiring
February 19, 2019
Answered

Date Comparison Script

  • February 19, 2019
  • 1 reply
  • 1606 views

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 has been closed for replies.
Correct answer Thom Parker

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

1 reply

Thom Parker
Community Expert
Thom ParkerCommunity ExpertCorrect answer
Community Expert
February 19, 2019

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
Inspiring
February 19, 2019

THANK YOU!

Inspiring
February 19, 2019

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);

}