Angular-material-datepicker

提供:Dev Guides
移動先:案内検索

角度マテリアル-DatePicker

Angular Directiveの md-datepicker は、日付を選択するための入力コントロールであり、入力検証用の ngMessages をサポートしています。

属性

次の表に、 md-datepicker のさまざまな属性のパラメーターと説明を示します。

Sr.No Parameter & Description
1
  • ng-model*

このコンポーネントのモデルには、JavaScript Dateオブジェクトが必要です。

2

ng-change

モデル値が変更されたときに評価される式。

3

md-min-date

最小日付(包括的)を表す式。

4

md-max-date

最大日付(包括的)を表す式。

5

md-date-filter

日付を期待してブール値を返す関数は、日付を選択できるかどうかを決定します。

6

md-placeholder

日付入力プレースホルダー値。

7

ng-disabled

これにより、日付ピッカーが無効かどうかが決まります。

8

ng-required

これにより、日付ピッカーに値が必要かどうかが決まります。

次の例は、md-datepickerディレクティブの使用とdatepickerの使用を示しています。

*_am_datepicker_*
<html lang = "en">
   <head>
      <link rel = "stylesheet"
         href = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.css">
      <script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
      <script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-animate.min.js"></script>
      <script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-aria.min.js"></script>
      <script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-messages.min.js"></script>
      <script src = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.js"></script>
      <style>
         .datepickerdemo md-content {
            padding-bottom: 200px;
         }

        .datepickerdemo .validation-messages {
            font-size: 11px;
            color: darkred;
            margin: 10px 0 0 25px;
         }
      </style>

      <script language = "javascript">
         angular
            .module('firstApplication', ['ngMaterial','ngMessages'])
            .controller('dateController', dateController);

         function dateController ($scope) {
            $scope.myDate = new Date();
            $scope.minDate = new Date(
               $scope.myDate.getFullYear(),
               $scope.myDate.getMonth() - 2,
               $scope.myDate.getDate());

            $scope.maxDate = new Date(
               $scope.myDate.getFullYear(),
               $scope.myDate.getMonth() + 2,
               $scope.myDate.getDate());

            $scope.onlyWeekendsPredicate = function(date) {
               var day = date.getDay();
               return day === 0 || day === 6;
            }
         }
      </script>
   </head>

   <body ng-app = "firstApplication">
      <div class = "datepickerdemo" ng-controller = "dateController as ctrl"
         layout = "column" ng-cloak>
         <md-content>
            <h4>Standard Date Picker</h4>
            <md-datepicker
               ng-model = "myDate"
               md-placeholder = "Enter date"></md-datepicker>

            <h4>Disabled Date Picker</h4>
            <md-datepicker
               ng-model = "myDate"
               md-placeholder = "Enter date"
               disabled></md-datepicker>

            <h4>Date-picker with min and max dates</h4>
            <md-datepicker
               ng-model = "myDate"
               md-placeholder = "Enter date"
               md-min-date = "minDate"
               md-max-date = "maxDate"></md-datepicker>

            <h4>Date-picker with only selectable weekends</h4>
            <md-datepicker
               ng-model = "myDate"
               md-placeholder = "Enter date"
               md-date-filter = "onlyWeekendsPredicate"></md-datepicker>

            <h4>Date-picker with only selectable weekends in a range</h4>
            <md-datepicker
               ng-model = "myDate"
               md-placeholder = "Enter date"
               md-min-date = "minDate"
               md-max-date = "maxDate"
               md-date-filter = "onlyWeekendsPredicate"></md-datepicker>

            <h4>Date-picker with validation mesages</h4>
            <form name = "myForm">
               <md-datepicker
                  name = "dateField"
                  ng-model = "myDate"
                  md-placeholder = "Enter date"
                  required
                  md-min-date = "minDate"
                  md-max-date = "maxDate"
                  md-date-filter = "onlyWeekendsPredicate"></md-datepicker>

               <div class = "validation-messages" ng-messages = "myForm.dateField.$error">
                  <div ng-message = "valid">The entered value is not a date!</div>
                  <div ng-message = "required">This date is required!</div>
                  <div ng-message = "mindate">Date is too early!</div>
                  <div ng-message = "maxdate">Date is too late!</div>
                  <div ng-message = "filtered">Only weekends are allowed!</div>
               </div>
            </form>

         </md-content>
      </div>
   </body>
</html>

結果

結果を確認します。