アプリケーションで口ひげテンプレートを使用しています。JSONの日時の値を以下に示します。適切な形式に変換するにはどうすればよいですか?
Created
"/Date(1335232596000)/"
Submitted
"/Date(1335214659000)/"
アプリケーションで口ひげテンプレートを使用しています。JSONの日時の値を以下に示します。適切な形式に変換するにはどうすればよいですか?
Created
"/Date(1335232596000)/"
Submitted
"/Date(1335214659000)/"
数値を分離して、subString()
それを新しい日付のミリ秒入力として使用する必要があります。
var a = "/Date(1335214659000)/";
var b = parseInt(a.substring(a.indexOf('(')+1,a.indexOf(')')));
var x = new Date(b);
alert(x);
さらに良いのは、それを関数にすることです。
function GetDateFromJSONData (a) {
var b = parseInt(a.substring(a.indexOf('(')+1,a.indexOf(')')));
return new Date(b);
}
var x = GetDateFromJSONData("/Date(1335214659000)/");
http://weblogs.asp.net/hajan/archive/2010/12/13/jquery-templates-in-asp-net-introduction.aspxで次のソリューションを見つけました
. それが他の人に役立つことを願っています
<html xmlns="www.w3.org/.../xhtml">
<head runat="server">
<title>...</title>
<script src="ajax.aspnetcdn.com/.../jquery-1.4.4.min.js" type="text/javascript"></script>
<script src="ajax.aspnetcdn.com/.../jquery.tmpl.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
var test =
{
Id: '43000796568231937',
created_at: '1294003506853-0700'
};
$("#myTemplate").tmpl(test).appendTo("#tblMyTable");
});
function FormatDate(jDate) {
alert("jDate:" + jDate);
var date = eval(jDate.replace(/\/Date\((\d+)\)\//gi, "new Date($1)"));
alert(date);
var dDate = new Date(date);
alert(dDate);
var year = dDate.getFullYear();
alert(year);
return dDate;
}
</script>
<script id="myTemplate" type="text/html">
<tr><td>${Id} - ${FormatDate(created_at)}</td></tr>
</script>
</head>
<body>
<form id="form1" runat="server">
<table id="tblMyTable"></table>
</form>
</body>
</html>
この質問が古いことは承知していますが、2014 年のハンドルバーの解決策はヘルパーを使用することです。例えば:
Handlebars.registerHelper("formatDate", function (datetime) {
var d = parseInt(datetime.match(/\d+/));
return new Date(d);
});
次に、ハンドルバー テンプレートで使用します。
{{formatDate Created}}
また
{{formatDate Submitted}}
お役に立てれば