bootstrap-datepicker
====================
Bootstrap-datepicker provides a flexible datepicker widget in the Bootstrap style.
.. figure:: _static/screenshots/demo_head.png
:align: center
Versions are incremented according to `semver <http://semver.org/>`_.
`Online Demo <https://eternicode.github.io/bootstrap-datepicker/>`_
Requirements
------------
* `Bootstrap`_ 2.0.4+
* `jQuery`_ 1.7.1+
.. _Bootstrap: https://getbootstrap.com/
.. _jQuery: https://jquery.com/
These are the specific versions bootstrap-datepicker is tested against (``js`` files) and built against (``css`` files). Use other versions at your own risk.
Dependencies
------------
Requires bootstrap's dropdown component (``dropdowns.less``) for some styles, and bootstrap's sprites (``sprites.less`` and associated images) for arrows.
A standalone .css file (including necessary dropdown styles and alternative, text-based arrows) can be generated by running ``build/build_standalone.less`` through the ``lessc`` compiler::
$ lessc build/build_standalone.less datepicker.css
Usage
-----
Call the datepicker via javascript::
$('.datepicker').datepicker();
Data API
^^^^^^^^
As with bootstrap's own plugins, datepicker provides a data-api that can be used to instantiate datepickers without the need for custom javascript. For most datepickers, simply set ``data-provide="datepicker"`` on the element you want to initialize, and it will be intialized lazily, in true bootstrap fashion. For inline datepickers, use ``data-provide="datepicker-inline"``; these will be immediately initialized on page load, and cannot be lazily loaded.
.. code-block:: html
<input data-provide="datepicker">
Markup with component
.. code-block:: html
<div class="input-group date" data-provide="datepicker">
<input type="text" class="form-control">
<div class="input-group-addon">
<span class="glyphicon glyphicon-th"></span>
</div>
</div>
You can disable datepicker's data-api in the same way as you would disable other bootstrap plugins::
$(document).off('.datepicker.data-api');
Configuration
^^^^^^^^^^^^^
:doc:`options` are passed to the ``datepicker`` function via an options hash at instantiation::
$('.datepicker').datepicker({
format: 'mm/dd/yyyy',
startDate: '-3d'
});
Most options may be provided as data-attributes on the target element:
.. code-block:: html
<input class="datepicker" data-date-format="mm/dd/yyyy">
::
$('.datepicker').datepicker({
startDate: '-3d'
});
Defaults for all options can be modified directly by changing values in the ``$.fn.datepicker.defaults`` hash::
$.fn.datepicker.defaults.format = "mm/dd/yyyy";
$('.datepicker').datepicker({
startDate: '-3d'
});
Stylesheets
^^^^^^^^^^^
There are a few different stylesheets included in the library. This is an overview of what each file is to be used for:
:code:`bootstrap-datepicker.css` gives legacy support for twitter bootstrap v2, :code:`bootstrap-datepicker3.css` is used for twitter bootstrap v3 support
and :code:`bootstrap-datepicker.standalone.css` can be used to include the datepicker without depending on the twitter bootstrap library.
No Conflict mode
^^^^^^^^^^^^^^^^
``$.fn.datepicker.noConflict`` provides a way to avoid conflict with other jQuery datepicker plugins::
var datepicker = $.fn.datepicker.noConflict(); // return $.fn.datepicker to previously assigned value
$.fn.bootstrapDP = datepicker; // give $().bootstrapDP the bootstrap-datepicker functionality
Table of Contents
-----------------
.. toctree::
markup
options
methods
events
keyboard
i18n
|