2013-07-15 4 views
0

아약스로 이벤트 날짜 (json 형식)를 검색하는 함수가 있습니다. 내 함수는 인간 친화적 인 형식으로 날짜를 변환해야합니다. 모든 것이 효과가 있지만 완벽하지는 않습니다. 문제는 다음과 같습니다. 서버 날짜가 인 경우 "21/06/2013 22h00"이 함수는 "22/06/2013 05h00" "26/07/2013 18h30"을 반환합니다.이 함수는 "27/07/2013 01h30"반환 방법 Json (datetime)은 UTC에 따라 밀리 초를 반환합니까?

6 시간 전진.

PS : 내 나라 내 서버가있는 국가 사이에, 정확히 6 시간 차이 .. 나는 UTC 기능을 넣어해야합니까

가? 내 기능이 실제로 잘못 되었나요? 여기

코드입니다 감사 :

var jsonifyMyDate = function (jsonDate) { 
      var parser = parseInt(jsonDate.substr(6)); 
      if (parser > 0 && !isNaN(parser)) { 
       var newDate = new Date(parser), 
       _date = newDate.getDate(), 
       _month = newDate.getMonth() + 1, 
       _year = newDate.getFullYear(), 
       _hour = newDate.getHours(), 
       _minute = newDate.getMinutes(); 
       var dateStr = (_date < 9 ? "0" : "") + _date; 
       dateStr += "/" + (_month < 9 ? "0" : "") + _month; 
       dateStr += "/" + _year; 
       dateStr += " "+(_hour < 9 ? "0" : "") + _hour + "h"; 
       dateStr += (_minute < 9 ? "0" : "") + _minute; 
       /* + "-" + newDate.getSeconds() + "-" + newDate.getMilliseconds() + "";*/ 
       return dateStr; 
      } else return ""; 

업데이트 : Asp.Net를 사용하고 같은 나는, 그래서 ... ActionResult 내에서 내 서버 측 구문 분석 기능 을 문제를 볼 수 있습니다 + MVC (C#), 어떻게 수 있도록

return Json(datetime); 

서버의 하나 대신 밀리 초 반환합니까?

+0

아니, 그건 완전히 터무니 없습니다. 그 기능이 어떻게 불려지는지와 그 주장이 어디서 왔는지 보여주십시오. –

+0

Asp.Net + MVC (C#)를 사용하여 서버 측 구문 분석 기능에 문제가 있음을 확인하십시오. "return Json (datetime)"이 서버의 시간 대신 UTC millisecondes를 반환하도록하려면 어떻게해야합니까? – Bellash

+0

@AnthonyGrist 당신이 쓰고 있습니다. 내 질문을 업데이트했습니다 ... 한번보세요. 답변 해 주셔서 감사합니다 – Bellash

답변

0

Json formate는 UTC datetime을 기반으로 만들어집니다.

아약스 호출에서 datetime을 가져온 후에는이 UTC datetime을 로컬 datetime 영역으로 변환해야합니다.

예는 "자바 스크립트는 server'side 된 적이 있습니까?"

var date = new Date('6/29/2011 4:52:48 PM UTC'); 
date.toString() // "Wed Jun 29 2011 09:52:48 GMT-0700 (PDT)" 
+0

답변 해 주셔서 감사하지만 잘 이해하지 못합니다. 어떻게 주어진 날짜를 로컬 datetime 영역으로 변환해야합니까? 나는 날짜가 과거, 미래에있을 수 있다는 것을 의미합니다 ... 제 경우에는 이것을 가지고 있습니다 var date = new Date (3892832); JavaScript가 UTC datetime인지 여부를 알려주는 방법은 무엇입니까? – Bellash

관련 문제