Как мне отформатировать дату / время с помощью шаблонов jQuery? - PullRequest
11 голосов
/ 03 декабря 2010

Я только что начал использовать Шаблоны jQuery в качестве моего движка шаблонов JavaScript. У меня вопрос, как я могу отформатировать дату (возвращенную из ASP.NET Json ActionResult) в форме:

/Date(1288709830000)/

Я пытался сделать следующее:

{{= $.format(new Date(parseInt(comment.DateCreated.substr(6))), 'd')}} 

Обратите внимание, что выше добавлен новый плагин глобализации jquery для добавления метода $.format. Также обратите внимание, что {{= comment.DateCreated }} - длинная рука для произнесения ${comment.DateCreated}.

Я бы очень признателен, если бы вы могли помочь.

Ответы [ 4 ]

3 голосов
/ 07 октября 2011

Это то, что я использовал

var formatDate = function (datetime) {
    var dateObj = new Date(parseInt(datetime.replace("/Date(", "").replace(")/", ""), 10));
    return dateObj.format("dd-MMM-yyyy"); //01-Jun-2001
}

И это в моем шаблоне JQuery

$ {FormatDate (InceptionDate)}

2 голосов
/ 08 декабря 2010

Это действительно работает. Я использовал бета-версию, размещенную на CDN Microsoft. Если вы загружаете последнюю версию, все работает как положено.

1 голос
/ 03 декабря 2010

Я придумал очень хакерское решение.Если вы добавите на страницу следующую функцию:

function format(o, t) {
    return $.format(o, t);
}

Затем вы можете изменить выражение на:

{{= format(new Date(parseInt(comment.DateCreated.substr(6))), 'd') }}

И оно работает нормально.Кажется странным, что два плагина, созданные Microsoft, могут конфликтовать таким образом.

0 голосов
/ 17 января 2011

Для форматирования даты и времени в шаблоне jQuery вы можете написать такую ​​функцию, как:

function formatDate(datetime) {
    var dateObj = new Date(datetime);
    var dateStr = (dateObj.getMonth()+1) + "/" + dateObj.getDate() + "/" + dateObj.getFullYear();
    return dateStr; // will return mm/dd/yyyy
}

Затем вы можете вызвать эту функцию из вашего шаблона jQuery следующим образом: ${formatDate(comment.DateCreated)}

Для более подробной информации см .: http://api.jquery.com/template-tag-equal

...