Skip to content

alongubkin/angular-datepicker

Repository files navigation

angular-datepicker

Warning: This project is no longer maintained. Use at your own risk!

The mobile-friendly, responsive, and lightweight Angular.js date & time input picker. Perfect for Ionic apps!

datepicker, datepicker

This is basically a pickadate.js fork that completely removes the jQuery dependency and adds Angular.js directives.

Bower

bower install angular-native-picker

Usage

Include build/angular-datepicker.js in your application:

<script src="angular-datepicker.js"></script>

Include CSS files in your application:

<link rel="stylesheet" href="build/themes/default.css"/>
<link rel="stylesheet" href="build/themes/default.date.css"/>
<link rel="stylesheet" href="build/themes/default.time.css"/>

Note: for usage within a modal the default (not classic) CSS files are recommended.

Add the module angular-datepicker as a dependency to your app module:

var myapp = angular.module('myapp', ['angular-datepicker']);

To create a date or time picker, add the pick-a-date or pick-a-time directive to your input tag:

<input type="text" pick-a-date="date" placeholder="Select Date" /> {{ date }}
<input type="text" pick-a-time="time" placeholder="Select Time" /> {{ time }}

You can also provide an options object to the directive which will be passed into the pickadate or pickatime constructor.

// somewhere in your controller
$scope.options = {
  format: 'yyyy-mm-dd', // ISO formatted date
  onClose: function(e) {
    // do something when the picker closes   
  }
}
<input type="text" pick-a-date="date" pick-a-date-options="options" /> {{ date }}
<input type="text" pick-a-time="time" pick-a-time-options="options" /> {{ time }}

If you don't need to provide any callbacks (like onClose) you can specify the options object as an angular expression:

<input type="text" pick-a-date="date" pick-a-date-options="{ format: 'yyyy-mm-dd' }" />

For a full list of available options please refer to the pickadate documentation for datepicker options and timepicker options.