Подтвердить что ты не робот

Дата ввода данных типа Knockout.js в Google Chrome

Я пытаюсь установить значение на входе type="date" в google chrome: http://jsfiddle.net/ruslans/gNv7H/

<input data-bind="value: dateString" type="date"></input>

var viewModel = {
    someDate: new Date(parseInt("/Date(1367708400000)/".substr(6)))
};
ko.applyBindings(viewModel);

Моя дата будет поступать из данных JSON, но сначала мне нужно выяснить, в каком формате она должна быть включена для выбора даты, чтобы распознать привязку. Должен ли я сделать это с помощью селектора jQuery и установить .val() в поле? Кажется глупым...

Изменить: согласно этой статье, формат даты для установки значения для ввода даты Google всегда должен быть "yyyy-mm-dd". Что является питти, потому что мы используем jQuery date picker для всех браузеров, где нет собственных сборщиков дат.

4b9b3361

Ответ 1

Вам просто нужно правильно форматировать value, как описано в рабочем проекте W3C:

Действительная полная дата, определенная в RFC 3339, с дополнительной квалификацией, что компонент года состоит из четырех или более цифр, представляющих число больше 0.

Пример: 1996-12-19

Так должно работать следующее:

var viewModel = {    
    dateString: ko.observable('2002-02-02')
};

Демо JSFiddle.