1
votes

I'm trying to calculate a difference between 2 days using jQuery. The input fields are the Bootstrap datepicker ones.

When I console.log the field values, they give me a date an in the format dd-mm-yyyy

Code:

console.log($("#actie_begin").val());

Logs:

27/06/2016

However when I try to use a new date() (to do the calculations) on it, the variable becomes 'Invalid date'

Code:

var start_date = new Date($("#actie_begin").val());

Logs:

Invalid Date

How can I solve this?

1
Can you post the markup too please?Jaqen H'ghar
The logged format is not dd-mm-yyyy but dd/mm/yyyy. Try to output like dd-mm-yyyy.JazZ

1 Answers

7
votes

The format you use is not supported by Date.parse.
You could extract the date parts and call the Date(year, month, day) constructor

var starts = $("#actie_begin").val();
var match = /(\d+)\/(\d+)\/(\d+)/.exec(starts)
var start_date = new Date(match[3], match[2], match[1]);