[英]disable past dates and to-date duration to three month
我創建了一個使用angularjs獲取日歷的應用程序,我使用了angular-bootstrap-datetimepicker插件來實現這一目標。 該應用程序工作正常,但問題是我想要禁用除當前日期之外的所有通過日期,並且從當前日期開始只應啟用三個月。
是否有任何功能,如此插件的開始日期和結束日期
任何人都可以幫我這個
我的工作演示顯示在JSFiddle中
HTML
<div ng-app="myApp">
<div ng-controller="AppCtrl">Selected Date: {{ data.embeddedDate | date:'yyyy-MM-dd a' }}
<datetimepicker data-ng-model="data.embeddedDate" data-datetimepicker-config="{ startView:'day', minView:'day' }" />
</div>
</div>
腳本
var app = angular.module('myApp', ['ui.bootstrap.datetimepicker']);
app.controller('AppCtrl', function ($scope) {
});
有一個'before-render'回調將在DateObject
的每個渲染上執行,給你一系列DateObject
出現在當前視圖中。 DateObject
一個屬性是selectable
。 設置控制是否可以選擇日期。
對於您的場景,它很容易實現:
$scope.beforeRender = function ($view, $dates, $leftDate, $upDate, $rightDate) {
var threeMonthsLater = moment().add(3, 'months');
for(var index=0;index<$dates.length;index++) {
$dates[index].selectable = moment($dates[index].utcDateValue).isBetween(moment(),threeMonthsLater);
}
}
對於isBetween
支持,請使用大於2.9的isBetween
版本。 無論如何,這個庫是datepicker所必需的。
工作小提琴
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.