Angular Bootstrap UI Datepicker更新minDate

时间:2015-12-10 05:32:22

标签: angularjs datepicker angular-ui

这应该很简单,我相信我的所有代码都是正确的,但我认为不是。

我有两个Datepickers。 Datepicker 2应该将它的minDate设置为datepicker 1的值。这是有效的,因为当我在Datepicker 1上选择日期时我可以看到最小日期attr更新,但是Datepicker 2没有重新呈现禁用日期。我觉得我应该以某种方式刷新Datepicker,但不确定如何。

// Datepicker Controller
app.controller('datepickerController', ['$scope', function($scope) {

    // open depart date
    $scope.openDepartDatepicker = function($event) {
        $event.preventDefault();
        $event.stopPropagation();
        // open depart datepicker
        $scope.departDatepickerOpen = true;
    }

    // open return date
    $scope.openReturnDatepicker = function($event) {
        $event.preventDefault();
        $event.stopPropagation();
        // open return datepicker
        $scope.returnDatepickerOpen = true;
    }

    $scope.$watch('search.searchparams.journeys[0].departuredate',function(value){
        $scope.returnMinDate = value;
    });

    // minDate set intiitally
    $scope.departMinDate = new Date();
    $scope.returnMinDate = new Date();
    // date options
    $scope.departDateOptions = {};
    $scope.returnDateOptions = {};
    // date format
    $scope.dateFormat = 'EEE dd/MM/yyyy';

}]);

这是实际输入

<input id="returnDate" placeholder="Returning" type="text" class="form-control" data-ng-model="search.searchparams.journeys[1].departuredate" datepicker-popup="{{dateFormat}}" data-ng-focus="openReturnDatepicker($event)" show-button-bar="false" min-date="{{returnMinDate}}" is-open="returnDatepickerOpen" datepicker-options="returnDateOptions" readonly=""/>

我没有尝试过任何改变。新的minDate正在更新,但只是没有应用于Datepicker。我实际上可以在检查器中看到更新的min-date属性,因此所有值都按预期更新。

任何帮助表示赞赏

1 个答案:

答案 0 :(得分:0)

这个问题很简单,很傻。

min-date="{{returnMinDate}}"

需要

min-date="returnMinDate"

今天早上它让我脸红了。