2016-08-18 96 views
-6

如何格式化這種格式如何在Jquery中使用時區格式化日期時間?

2016-08-17T11:17:57+04:00人類可讀的格式從服務器返回的日期 - 例如

17-08-2016, 11:17 AM

jQuery的?

我試過這個solution但問題是它總是在IST中轉換時間。即使是來自美國的人也在IST中看到了這一點。不太明白什麼是問題。

試過這個,但問題仍然存在。

Changing Date Time Format using jquery/javascript

+5

可能重複:http://stackoverflow.com/questions/25275696/javascript-format-date-time http://jsfiddle.net/a_incarnati/kqo10jLb/4/ –

+0

也許這個主題會幫助你http://stackoverflow.com/questions/3075577/convert-mysql-datetime-stamp-into- javascripts-date-format – Ionut

+0

新日期(「2016-08-17T11:17:57 + 04:00」) - 你有.toLocaleDateString和toLocaleTimeString – mplungjan

回答

0

試試這個Getting only selected date in bootstrap-date paginator

,如果你不想從名字月份,只保留一個月值,而不是名稱

更加另外,我覺得這是你想要 什麼獲取日期試試這個

<!DOCTYPE html> 
 
<html> 
 
<head> 
 
\t <title></title> 
 
\t <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> 
 
</head> 
 
<body> 
 
\t 
 

 
\t 
 
</body> 
 

 
<script type="text/javascript"> 
 
    var datestring = "2016-08-17T11:17:57+04:00"; 
 
    var mydate = new Date(datestring); 
 
    var thedate = mydate.getDate(); 
 
    var month = mydate.getMonth(); 
 
    var year = mydate.getFullYear(); 
 
    
 

 

 
    
 
    var theresult = year +"-"+"0"+(month+1)+"-"+thedate; 
 
    alert(theresult); 
 

 
    
 

 
</script> 
 
</html>

+0

當我運行這段代碼時,我得到了17-08-2016,12:47的結果。但我想2016-08-17 11:17:57 – Avishek

+0

是這個日期自動生成像'new Date()'或給定的日期 –

+0

這個日期是由我給出的。 – Avishek

0

版本1:

function pad(num) { 
 
    return String("0"+num).slice(-2); 
 
} 
 
function formatDate(d) { 
 
    day = d.getDate(); 
 
month = d.getMonth()+1, 
 
    year = d.getFullYear(); 
 
    return ""+pad(day)+"-"+pad(month)+"-"+year+" "+d.toLocaleTimeString(); 
 
} 
 
var d = new Date("2016-08-17T11:17:57+04:00"); 
 
console.log(formatDate(d));

版本2:

function chopString(d) { 
 
    var parts = d.split("T"); 
 
    return parts[0] + " " + parts[1].split("+")[0]; 
 
} 
 
console.log(chopString("2016-08-17T11:17:57+04:00"));