2015-11-22 2 views
1

Я использую ниже код для даты.Тип ввода = «дата», дающая предыдущий день в HTML5

<input type="date" value="{{data.endDate | date: "MM/dd/yyyy"}}" ng-model="data.endDate" /> 

Если я выбрать дату сегодня (11/22/2015) в контроллере значение ENDDATE является 2015-11-21T18:30:00.000Z.

  1. Как я могу получить точное значение даты?
  2. Модельная дата не отображается.
+1

Возможный дубликат [Использование фильтра даты в формате AngularJS с датой UTC] (http://stackoverflow.com/questions/20662140/using-angularjs-date-filter-with-utc-date) – GSerg

ответ

1

Это происходит потому, что объект даты для выбранной даты создан и представлен в соответствии со стандартами UTC.

Решение

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

  2. Самый простой способ, те даты были выбраны из выбора даты, «преобразовать объект даты в строку используя локали метод Дейта конвенции, dateObject.toLocaleDateString(). См this для дальнейшего . понимание

пример:. $ scope.dateOfTransactionFilter.toLocaleDateString()

Надеется, что это помогает Cheers

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