Reputation: 159
I need the date to show in this format 2014-11-04 as "yy mm dd"
Currently, my script still shows me Tue Nov 04 2014 00:00:00 GMT+0200 (Egypt Standard Time)
$(document).ready(function() {
var userDate = '04.11.2014';
from = userDate.split(".");
f = new Date(from[2], from[1] - 1, from[0]);
console.log(f);
});
Upvotes: 8
Views: 117125
Reputation: 12132
You may try the following:
$(document).ready(function() {
var userDate = '04.11.2014';
var from = userDate.split(".");
var f = new Date(from[2], from[1], from[0]);
var date_string = f.getFullYear() + " " + f.getMonth() + " " + f.getDate();
console.log(date_string);
});
Alternatively I would look into Moment.js It would be way easier to deal with dates:
$(document).ready(function() {
var userDate = '04.11.2014';
var date_string = moment(userDate, "DD.MM.YYYY").format("YYYY-MM-DD");
$("#results").html(date_string);
});
MOMENT.JS DEMO: FIDDLE
Upvotes: 8
Reputation: 21926
You can construct this using the date object's methods
var date = new Date(userDate),
yr = date.getFullYear(),
month = date.getMonth() < 10 ? '0' + date.getMonth() : date.getMonth(),
day = date.getDate() < 10 ? '0' + date.getDate() : date.getDate(),
newDate = yr + '-' + month + '-' + day;
console.log(newDate);
Upvotes: 19
Reputation: 3436
I think you might find you answer here: Converting string to date in js
Replace the "." with "-" to validate the date.
Edit: this is done in javascript, Jquery does not have a utillity function for date
Upvotes: 0