2015-03-10 4 views
0

Как я могу написать функцию фильтра для даты получить от даты и времени строки в angularjsПолучить дату из строки datetime в angularJs?

Моей строке даты

2015-03-17 00:00:00 

Я хочу, чтобы получить только 2015-03-17.

Мой код,

<span class="pull-right"> {{quotationDetails.quotation_date| date : "yyyy-MM-dd" : "'+0430'"}} </span> 

, но он не работает, дисплей nothing.How это решить?

ответ

0

Вы используете строку. Дата фильтр принимает объект Даты, миллисекунды (строки или число) или различных ISO 8601 DateTime струнных форматов (например, гггг-ММ-ДДTчч: мм: ss.sssZ и его более короткие версии, как YYYY-MM-ДДTчч : mmZ, yyyy-MM-dd или yyyyMMddTHHmmssZ). Как указано в docs

Попробуйте установить quotationDetails.quotation_date в new Date('2015-03-17 00:00:00')

Вот это working example

+0

Как я могу использовать новую дату внутри ng-repeat для входного значения? – gsk

+0

@ShihabudheenMuhammed вы можете просто использовать type = "date" для своего поля ввода. Проверьте [this] (http://plnkr.co/edit/p3ptpOGz82zo03SIOpOh?p=preview) и [docs] (https://docs.angularjs.org/api/ng/input/input%5Bdate%5D) и есть также [datetime] (https://docs.angularjs.org/api/ng/input/input%5Bdatetime-local%5D), и это рекомендуется угловой командой для ввода даты – masimplo

0

Попробуйте разборе quotation_date первых, попробуйте следующее:

function Scoper($scope) { 
    var string = "2015-03-17 00:00:00"; 
    $scope.quotationDetails = { 
     dateNow: Date.now(), 
     stringDate: string, 
     quotationDate: Date.parse(string) 
    } 
} 

Вот рабочий образец: http://jsfiddle.net/rainercedric23/aubmfogv/4/

+0

, где я должен поставить эту функцию? или как я могу вызвать вызов? – gsk

+0

Откуда вы получили данные? вы можете просто создать другую переменную, которая равна вашей строке Date, например 'quotationDate = Date.parse (string)', пожалуйста, просмотрите мою скрипку, чтобы вы могли воспроизводить код так, как хотите. – Cedric

+0

Отвечаю ли я на ваш вопрос? если да, то пожалуйста признавайте его, спасибо! или если нет, просто скажите мне. – Cedric

1

Вы можете получить требуемый результат с помощью нижеуказанных изменений, формат даты и часовой пояс не требуют двойных кавычек, а заключают их только в одинарные кавычки, как показано ниже.

<span class="pull-right"> {{quotationDetails.quotation_date| date : 'yyyy-MM-dd' : '+0430'}} </span> 

Надеюсь, что это решит вашу проблему.

Смежные вопросы