2017-10-09 58 views
0

我使用角矩選擇器。我想從數據庫中動態禁用一些日期。我使用可選方法,但它在選定日期後生效。任何人都可以幫助我動態禁用日期?如何使用角矩選擇器動態禁用日期

視圖

<div class="col-md-2" > 
    <div class="form-control" start-view="month" id="stringDate" moment-picker="stringDate" 
    format="DD-MM-YYYY" locale="en" name="pickdate" ng-model="momentDate" 
    selectable="dateDisable(date,type)" required> 
    <a class="pull-right" ng-if="stringDate" ng-click="stringDate = ''"> &times; </a> 
    <span ng-class="{'text-muted': stringDate}"> 
     {{stringDate || 'Select a date...' }} 
    </span> 
</div> 

視圖控制器

$scope.dateDisable = function(date,type) 
{ 
    var check = 0; 
    for(var i=0;i<=$scope.leavedates.length;i++) { 
     var disable = $scope.leavedates[i].Date_selected; 
     check = type !== 'day' || date.format('DD-MM-YYYY') !== disable; 
     if(!check) { 
      return false; 
     } 

    } 
}; 
$scope.leavedates =[]; 
$scope.getDatesSelect_asleave = function() 
{ 
    $http.post('url').success(function(response) { 
    $scope.leavedates =response; 


    }); 
}; 

回答

-1

您需要使用selectable method允許從數據庫日期的選擇或作爲例子,你可以看到,週日不可選。

您將從數據庫中獲取日期列表,這些日期可以是可選擇的或不可以的,然後您可以創建類似的功能並根據選擇返回true或false。

如果您想嘗試自己的函數,那麼在頁面上有一個plunkr link,然後創建一個從數據庫中獲得的json對象,並將您的檢查放在可選方法中,以查看它是否適合您的需要。

+0

選取器在從數據庫獲取日期之前運行。所以日期不能禁用。 –

+0

這是一種方法,所以在獲得日期後應該能夠在拾取器對象上調用它。 –

+0

$ scope.leavedates是數組變量包含要禁用的日期集合。在獲得數組中的值之後,我將如何調用可選方法/以及參數如何傳遞。 –

相關問題