jQuery Date Range Picker是一款允许用户选择一个日期时间范围的jQuery日期选择器插件。整个日期选择器插件使用CSS来渲染样式,可以非常容易的使用CSS来定制它的皮肤。它的兼容性非常好,支持IE6+的IE浏览器。该日期选择器的特点有:
使用该日期选择器插件需要 jQuery 1.3.2+和Moment 2.2.0+的支持。
<link rel="stylesheet" href="daterangepicker.css" /> <script src="moment.min.js"></script> <script src="jquery.daterangepicker.js"></script>
$('#dom-id').dateRangePicker(configObject);
该日期选择器的默认配置参数如下:
{ format: 'YYYY-MM-DD', separator: ' to ', language: 'auto', startOfWeek: 'sunday',// or monday getValue: function() { return this.value; }, setValue: function(s) { this.value = s; }, startDate: false, endDate: false, minDays: 0, maxDays: 0, showShortcuts: true, time: { enabled: false }, shortcuts: { //'prev-days': [1,3,5,7], 'next-days': [3,5,7], //'prev' : ['week','month','year'], 'next' : ['week','month','year'] }, customShortcuts : [], inline:false, container: 'body', alwaysOpen:false, singleDate:false, batchMode:false, beforeShowDay: [function], dayDivAttrs: [], dayTdAttrs: [], applyBtnClass: '' }
format
相同。format
相同。inline
模式渲染该日期选择器,而不是overlay
模式。如果设置为true
,则要一起设置container
参数。inline
模式,你可能希望在页面加载时就渲染日期选择器。该参数设置为true
时会隐藏"close"按钮。true
可以选择单个的日期。当该日期选择器在DOM中选择某个日期范围时会触发三个事件。
$('#dom-id') .dateRangePicker() .bind('datepicker-change',function(event,obj) { console.log(obj); // obj will be something like this: // { // date1: (Date object of the earlier date), // date2: (Date object of the later date), // value: "2013-06-05 to 2013-06-07" // } }) .bind('datepicker-apply',function(event,obj) { console.log(obj); }) .bind('datepicker-close',function() { console.log('close'); });
在你调用$(dom).dateRangePicker()之后:
$(dom).data('dateRangePicker') .setDateRange('2013-11-20','2013-11-25'); //set date range, two date strings should follow the `format` in config object .clear(); // clear date range .close(); // close date range picker overlay .open(); // open date range picker overlay .destroy(); // destroy all date range picker related things
该插件的作者是中国人,可以通过longbill.cn@gmail.com联系他。
插件在github上的地址:https://github.com/longbill/jquery-date-range-picker