Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Javascript's Date function always returns current time with differend Json strings as input

I've got a AJAX call that returns a JSON string containing several different DateTimes. If I don't convert them, I get strings like /Date(1224043200000-0600)/. If I convert them using the Date function in JavaScript, it returns the current time. I've read a post about this, but it doesn't answer my question. Here's a simplified script which can be pasted in a new file which shows my problem. The Raw Span should show the original string and the Converted Span should show the converted object.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html dir="ltr">
    <body>
        <span id="raw">Raw</span><br />
        <span id="converted">Converted</span>

        <script type="text/javascript">
            var datum = "/Date(1224043200000-0600)/";

            function formatDate(value) {
                return Date(value);
            }

            var RAW = document.getElementById("raw");
            var CONVERTED = document.getElementById("converted");

            RAW.innerHTML = datum;
            CONVERTED.innerHTML = formatDate(datum);
        </script>
    </body>
</html>

The result of this code is as follows:

/Date(1224043200000-0600)/
 Mon Aug 22 10:35:21 UTC+0200 2011 

Can someone tell my what I should do to show the right DateTime in the object? The grid which contains all my dates, shows the current time in every cell, although JSON returns different strings all the time.

like image 607
Leonard Avatar asked Dec 06 '25 01:12

Leonard


1 Answers

There's a bug in your code, you are returning a call to the Date object, which gets the current date as a string. You should do a return new Date(value); to get a new object.

Also add this:

var date = new Date(parseInt(datum.substr(6)));
CONVERTED.innerHTML = formatDate(date);

See a test here http://jsfiddle.net/uwSCN/ .

like image 145
Eliu Avatar answered Dec 07 '25 18:12

Eliu



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!