1

我在基本的 Angular 指令中使用 Amsul 的Pickadate :

.directive('pickadate', [function() {
    return {
        restrict: 'A',
        require: 'ngModel',
        scope: {
            options: '=pickadate'
        },
        link: function(scope, element, attrs, ngModel) {
            // Extend the default options with passed ones
            var options = angular.extend({
                format: 'yyyy-mm-dd'
            }, scope.options);

            // Set the picker
            element.pickadate(options);

            // Set the value
            scope.$parent.$watch(attrs.ngModel, function(value) {
                if (!element.pickadate('picker')) return;
                element.pickadate('picker').set('select', value, {format: options.format});
            });
        }
    };
}])

在我的模板中,我有:

<input id="dob" type="text" name="dob" ng-model="data.client.dob" pickadate />

最后,我的控制器只是创建了一个空的客户端资源

$scope.data.client = new Client();

当页面加载时,我希望字段为空白,但是,如果我在指令中记录值,我会得到:

2]

我几乎可以肯定这是一个挑剔的事情,但无法弄清楚为什么要设置今天的日期。奇怪的是,如果我添加required到表单域,它不再设置今天的日期。

4

0 回答 0