当我单击datetimepicker
按钮时,它将清除日期。
'use strict';
app.directive('defaultDate', function () {
return {
restrict: 'E',
templateUrl: 'app/directives/default-date.html',
scope: {
onChange: '&',
obj: '='
},
controller: function ($scope) {
$scope.alterou = function () {
$scope.onChange()
}
$scope.openCalendar = function (e) {
e.preventDefault()
e.stopPropagation()
$scope.obj = { isOpen: true };
};
}
}
})
<p class="input-group">
<input type="text" class="form-control" ng-change='alterou()' datetime-picker="dd/MM/yyyy HH:mm" ng-model="obj.date" is-open="obj.isOpen" />
<span class="input-group-btn">
<button type="button" class="btn btn-default" ng-click="openCalendar($event, prop)"><i class="fa fa-calendar"></i></button>
</span>
</p>
我希望日历不会仅通过打开日期来清除日期。
答案 0 :(得分:0)
问题是您的$scope.openCalendar
函数中的这一行:
$scope.obj = { isOpen: true };
您正在将$scope.obj
设置为具有单个属性isOpen
的对象。您应该在这里做的是:
$scope.obj.isOpen = true;
这样,将保留$scope.obj.date
的值。