3

MVCページから返された次のJSON日付があります。

"DateProcessed":"\/Date(1258125238090)\/"

以下のようにデータを処理するために JTemplates を使用しています。

$('#result').setTemplate($("#TemplateResultsTable").html());
$("#result").processTemplate(data);

これは私の結果テンプレートです

<script type="text/html" id="TemplateResultsTable">    
<h3>{$T[0].StatusName} - Found: {$T.length} </h3>
<table>
    <tr>
        <th>Name</th>
        <th>Description</th>
        <th>Date Processed</th>
    </tr>
    {#foreach $T as match}
        <tr>
            <td>{$T.match.Title}</td>
            <td>{$T.match.Description}</td>
            <td>{$T.match.DateProcessed}</td>
        </tr>
    {#/for}
</table>
</script>

私の日付が /Date(1258125238090)/ としてページに出力されるという事実を除けば、すべてうまく機能します

結果テンプレート内の日付をフォーマットするにはどうすればよいですか?

4

2 に答える 2

5

他の誰かがこの投稿を検索した場合に備えて、以下に回答してください...

次の JScript を追加します....

function formatJSONDate(jsonDate) {
    var date = eval(jsonDate.replace(/\/Date\((\d+)\)\//gi, "new Date($1)"));
    return dateFormat(date, "ddd ddS mmm yyyy");
 }  

javascript日付形式ライブラリをダウンロードしてから、jTemplate テンプレートに追加します

<td>{formatJSONDate($T.match.DateProcessed)}</td>

そして、それはそれです!

于 2009-11-17T15:17:59.247 に答える
1

私はこれと同じ問題に遭遇し、JSON で日付を文字列として返すだけになりました (非常に悪化した後)。

于 2009-11-17T14:56:20.423 に答える