Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Date issue in Firefox

I want to parse date in my page to Javascript's Date.

So I have this in my page

<span>01-07-2012 01:04 PM</span>

And I have Javascript code that parses this value to date

var tagText = $(this).html();
var givenDate = new Date(tagText);
alert(givenDate);

And here is what I get in different browsers

IE:

Sat Jan 7 13:04:00 UTC+0400 2012

Chrome:

Sat Jan 07 2012 13:04:00 GMT +0400 (Caucasus Standard Time)

Firefox:

Invalid Date

Why Firefox doesn't recognize my date? What I must change to make it work with all major browsers?

Here is jsfiddle http://jsfiddle.net/mgER5/1/

like image 209
Chuck Norris Avatar asked Dec 22 '22 03:12

Chuck Norris


2 Answers

try this:

var tagText = $(this).html();
tagText = tagText.replace(/-/g, '/');
var givenDate = new Date(tagText);
alert(givenDate);
like image 127
redmoon7777 Avatar answered Dec 30 '22 01:12

redmoon7777


As explained in the documentation the string you are passing to the constructor of the Date object should be:

String value representing a date. The string should be in a format recognized by the parse method (IETF-compliant RFC 1123 timestamps).

Basically it should represent an RFC822 or ISO 8601 date.

like image 44
Darin Dimitrov Avatar answered Dec 30 '22 01:12

Darin Dimitrov