如何使用angularJS datepicker指令启用特定日期?

时间:2016-06-03 09:49:12

标签: angularjs html5 datepicker angular-ui-bootstrap

我想在Datepicker中创建一个Angular JS指令,我只想为用户启用几个特定日期。

例如:我有一组数字1,3,5,7,因此我想在每个月的Datepicker中启用这些特定日期。

1 个答案:

答案 0 :(得分:0)

如果您正在使用Angular-UI中的Datepicker指令。看看这个主题:

Disable specific dates in Angularjs date picker

如果要在Angular中创建自定义datepicker指令:

假设您有算法生成一个日期选择器,您可以制作一个常规的日期选择器并在每天进行ng-click(在周/月内使用ng-repeat)并检查所选日期是否是您的一组成员控制器中的数字。

您还可以在html中的day元素上使用ng-class =“{{disabled:checkIfDayIsDisabled()}},使用css将禁用日期变灰,以使其对用户更明显。

以下是我将如何实现它的示例:

在你的js中:

var enabledDates = [1,3,5,7];

$scope.checkIfDayIsDisabled(day) {
    if (!checkIfDayIsDisabled(day)) {
        // executes this only if the day is enabled
    }

$scope.checkIfDayIsDisabled(day) {
    return (check if day is in enabledDates);
}
你的HTML中的

<div ng-class="{{disabled: checkIfDayIsDisabled(day)}}" ng-repeat="day in month" ng-click="selectDay(day)">{{day.date | date:'dd'}}</div>

在你的css中:

.disabled{
    // your gray out styling
}

希望这会帮助你。