bootstrap-datepicker是一款Bootstrap日期选择器插件。该日期选择器插件支持多种语言,可通过配置参数设置日期选择器,日期范围选择器等,功能非常强大。
安装
可以通过npm、bower或yarn来安装bootstrap-datepicker日期选择器插件。
# Yarn yarn add bootstrap-datepicker # NPM npm install bootstrap-datepicker # Bower bower install bootstrap-datepicker
使用方法
在页面中引入bootstrap相关文件,jquery和bootstrap-datepicker3.css,以及bootstrap-datepicker.js文件。
<link rel="stylesheet" href="bootstrap.min.css"> <link rel="stylesheet" href="bootstrap-datepicker3.css"> <script src="jquery.min.js"></script> <script src="bootstrap.min.js"></script> <script src="bootstrap-datepicker.js"></script>
如果需要使用i18n文件,还需要引入相应的js文件,例如简体中文需要引入bootstrap-datepicker.zh-CN.min.js
文件。
<script type="text/javascript" src="dist/locales/bootstrap-datepicker.zh-CN.min.js"></script>
HTML结构
可以直接在<input>
元素上添加data-provide="datepicker"
属性直接将它转换为一个日期选择器。如果需要内联的日期选择器,可以使用data-provide="datepicker-inline"
。例如:
<input data-provide="datepicker">
如果需要一个容器,可以使用下面的代码:
<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>
初始化插件
在页面DOM元素加载完毕之后,可以通过datepicker()
方法来初始化bootstrap-datepicker日期选择器插件。
$('.datepicker').datepicker();
配置参数
bootstrap-datepicker日期选择器插件可用的配置参数如下:
$('input').datepicker({ assumeNearbyYear: false, autoclose: false, // Callback functions beforeShowDay: $.noop, beforeShowMonth: $.noop, beforeShowYear: $.noop, beforeShowDecade: $.noop, beforeShowCentury: $.noop, calendarWeeks: false, clearBtn: false, toggleActive: false, daysOfWeekDisabled: [], daysOfWeekHighlighted: [], datesDisabled: [], endDate: Infinity, forceParse: true, format: 'mm/dd/yyyy', keepEmptyValues: false, keyboardNavigation: true, language: 'en', minViewMode: 0, maxViewMode: 4, multidate: false, multidateSeparator: ',', orientation: "auto", rtl: false, startDate: -Infinity, startView: 0, todayBtn: false, todayHighlight: false, updateViewDate: true, weekStart: 0, disableTouchKeyboard: false, enableOnReadonly: true, showOnFocus: true, zIndexOffset: 10, container: 'body', immediateUpdates: false, title: '', templates: { leftArrow: '«', rightArrow: '»' }, showWeekDays: true });
方法
bootstrap-datepicker日期选择器插件可用的API方法有:
// shows the date picker $('input').datepicker('show'); // hides the date picker $('input').datepicker('hide'); // Clear the dates $('input').datepicker('clearDates'); // Destroys the date picker $('input').datepicker('destroy'); // Updates the date picker $('input').datepicker('update', DATE); // Sets a new date $('input').datepicker('setDate', DATE); // Sets a new date $('input').datepicker('setUTCDate', DATE); // Sets an array of dates $('input').datepicker('setDates', DATE); // Sets an array of UTC dates $('input').datepicker('setUTCDates', DATE); // Returns a localized date object $('input').datepicker('getDate'); // Returns a list of localized date objects $('input').datepicker('getDates'); // Returns a list of localized date objects $('input').datepicker('getUTCDates'); // Returns the lower date limit on the datepicker $('input').datepicker('getStartDate'); // Returns the upper date limit on the datepicker $('input').datepicker('getEndDate'); // Sets a new lower date limit on the datepicker $('input').datepicker('setStartDate', DATE); // Sets a new upper date limit on the datepicker $('input').datepicker('setEndDate', DATE); // Sets the days that should be disabled. $('input').datepicker('setDatesDisabled', DATE); // Sets the days of week that should be disabled. $('input').datepicker('setDaysOfWeekDisabled', DATE); // Sets the days of week that should be highlighted $('input').datepicker('setDaysOfWeekHighlighted', DATE);
bootstrap-datepicker日期选择器插件的github地址为:https://github.com/uxsolutions/bootstrap-datepicker