我有问题我想从日期到日期使用datepicker(签入和签出几个月而不是几天)它应该是几个月,问题是:我有模板,但它告诉我一天和一年和月份,我想要的只是月份和年份
http://plnkr.co/edit/W5pb1boMLOHZFnWkMU8o?p=preview
html:
<!doctype html>
<html ng-app="plunker">
<head>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.0.8/angular.js"></script>
<script src="http://angular-ui.github.io/bootstrap/ui-bootstrap-tpls-0.7.0.js"></script>
<script src="example.js"></script>
<link href="//netdna.bootstrapcdn.com/twitter-bootstrap/2.3.1/css/bootstrap-combined.min.css" rel="stylesheet">
</head>
<body>
<div ng-controller="DatepickerDemoCtrl">
<h4>Start</h4>
<div class="form-horizontal">
<p>
<input type="text" datepicker-popup="{{format}}" ng-model="start" is-open="startOpened" min="minStartDate" max="maxStartDate" datepicker-options="dateOptions" close-text="Close" />
<button class="btn" ng-click="openStart()"><i class="icon-calendar"></i></button>
</p>
</div>
<h4>End</h4>
<div class="form-horizontal">
<p>
<input type="text" datepicker-popup="{{format}}" ng-model="end" is-open="endOpened" min="minEndDate" max="maxEndDate" datepicker-options="dateOptions" close-text="Close" />
<button class="btn" ng-click="openEnd()"><i class="icon-calendar"></i></button>
</p>
</div>
</div>
</body>
</html>
js:
angular.module('plunker', ['ui.bootstrap']);
var DatepickerDemoCtrl = function ($scope, $timeout) {
$scope.start = new Date('11/20/13');
$scope.end = new Date();
$scope.minStartDate = 0; //fixed date
$scope.maxStartDate = $scope.end; //init value
$scope.minEndDate = $scope.start; //init value
$scope.maxEndDate = $scope.end; //fixed date same as $scope.maxStartDate init value
$scope.$watch('start', function(v){
$scope.minEndDate = v;
});
$scope.$watch('end', function(v){
$scope.maxStartDate = v;
});
$scope.openStart = function() {
$timeout(function() {
$scope.startOpened = true;
});
};
$scope.openEnd = function() {
$timeout(function() {
$scope.endOpened = true;
});
};
$scope.dateOptions = {
'year-format': "'yy'",
'starting-day': 1
};
};
先谢谢
答案 0 :(得分:0)
尝试在日期选择器元素中使用 min-mode 和 max-mode 属性。通过将min-mode设置为month和max-mode to year,您只能启用month-picker和year-picker。
HTML:
<input type="text" show-weeks="false" show-button-bar="false" class="form-control" datepicker-popup="{{format}}" ng-model="dt" is-open="status.opened" min-date="minDate" max-date="maxDate" datepicker-options="dateOptions" date-disabled="disabled(date, mode)" ng-required="true" min-mode="'month'" max-mode="'year'" />
这应该有所帮助。
您也可以在此线程中查看我的答案,我只启用了月份选择器。 (similar solution)