2015-11-19 1 views
2

Я использую директиву Angular-Pikaday, выбор и получение даты отлично работает. Значение в элементе ввода pikaday изменяется правильно, если выбрано из pikaday datepicker.Angular - Pikaday: изменить дату в элементе pickaday

Я хочу изменить значение в элементе ввода pikaday через код, то есть от контроллера, при некотором действии.

Я попытался назначить ng-model, он изменяет значение, но не распознается pikaday datepicker.

Ссылка на Plunker

Как я могу изменить значение входного pikaday элемента.

Спасибо,

ответ

2

Вы можете вызвать setDate метод на возражали передается pikaday конфигурации.

var app = angular.module('plunker', ['pikaday']); 

app.controller('MainCtrl', function($scope) { 
    $scope.startDate = '11/18/2015'; 

    $scope.changeDate = function() { 
    $scope.startDate.setDate('11/15/2015'); 
    } 
}); 

Приведенный выше код будет работать.

Plnkr: http://plnkr.co/edit/emdaPPWATDH6JJdV6S4V?p=preview

1

Вы должны получить pikaday-объект и вызвать его setDate() метод.

Как видно из this plunker.

Редактировать:VVK's Solution - более чистый.

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