Matériau angulaire - DatePicker
le md-datepicker, une directive angulaire, est un contrôle d'entrée pour sélectionner une date et prend en charge ngMessages pour la validation d'entrée.
Les attributs
Le tableau suivant répertorie les paramètres et la description des différents attributs de md-datepicker.
Sr. Non | Paramètre et description |
---|---|
1 | * ng-model Le modèle de ce composant attend un objet Date JavaScript. |
2 | ng-change Expression évaluée lorsque la valeur du modèle change. |
3 | md-min-date Expression représentant une date min (inclus). |
4 | md-max-date Expression représentant une date max (incluse). |
5 | md-date-filter La fonction attend une date et renvoie un booléen et détermine si elle peut être sélectionnée ou non. |
6 | md-placeholder Valeur de l'espace réservé d'entrée de date. |
sept | ng-disabled Cela détermine si le sélecteur de date est désactivé. |
8 | ng-required Cela détermine si une valeur est requise pour le sélecteur de date. |
Exemple
L'exemple suivant montre l'utilisation de la directive md-datepicker ainsi que les utilisations de datepicker.
am_datepicker.htm
<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>
Résultat
Vérifiez le résultat.