jQuery Date Range Picker是一款允許用戶選擇一個日期時間範圍的jQuery日期選擇器插件。整個日期選擇器插件使用CSS來渲染樣式,可以非常容易的使用CSS來定製它的皮膚。它的兼容性非常好,支持IE6+的IE瀏覽器。
該日期選擇器的特點有:
(1)支持IE6+, Firefox, Chrome, Safari和其他標準的HTML5瀏覽器。
(2)支持多種語言。
(3)使用CSS來渲染樣式。
(4)容易使用和定製。
(5)支持多種時間格式。
工具/原料
筆記本電腦或是臺式機
互聯網
jQuery
jQuery Date Range Picker
方法/步驟
在Github上下載 jQuery Date Range Picker,如下圖所示:
使用該日期選擇器插件需要 jQuery 1.3.2+和Moment 2.2.0+的支持。
$('#dom-id').dateRangePicker(configObject);
該日期選擇器的默認配置參數如下:
format (String):Moment的日期格式。
separator (String):日期字符串之間的分隔符。
language (String):預定義的語言是"en"和"cn"。你可以使用這個參數自定義語言。也可以設置為"auto"來讓瀏覽器自己檢測語言。
startOfWeek (String):"sunday" 或 "monday"。
getValue (Function):當從DOM元素中獲取日期範圍時會調用該函數,函數的上下文被設置為datepicker DOM。
setValue (Function):當向DOM元素中寫入日期範圍時調用該函數。
startDate (String or false):定義用戶允許的最早日期,格式和format相同。
endDate (String or false):定義用戶允許的最後日期,格式和format相同。
minDays (Number) :該參數定義日期範圍的最小天數,如果設置為0,表示不限制最小天數。
maxDays (Number):該參數定義日期範圍的最大天數,如果設置為0,表示不限制最大天數。
showShortcuts (Boolean) :先生或隱藏shortcuts區域。
time (Object):如果允許該參數就會添加時間的範圍選擇。
shortcuts (Object):定義快捷鍵按鈕。
customShortcuts (Array):定義自定義快捷鍵按鈕。
inline (Boolean):使用inline模式渲染該日期選擇器,而不是overlay模式。如果設置為true,則要一起設置container參數。
container (String, css selector DOM Object) :要進行渲染的日期選擇器DOM元素。
alwaysOpen (Boolean):如果使用inline模式,你可能希望在頁面加載時就渲染日期選擇器。該參數設置為true時會隱藏"close"按鈕。
singleDate (Boolean):設置為true可以選擇單個的日期。
batchMode (false / 'week' / 'month'):自動批處理模式。
當該日期選擇器在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
#wrapper
{
width:800px;
margin:0 auto;
color:#333;
font-family:Tahoma;
line-height:1.5;
font-size:14px;
}
.demo { margin:30px 0;}
.date-picker-wrapper .month-wrapper table .day.lalala { background-color:orange; }
.options { display:none; border-left:6px solid #8ae; padding:10px; font-size:12px; line-height:1.4; background-color:#eee; border-radius:4px;}
jQuery可選擇日期範圍的日期選擇器插件 A jQuery plugin that allows user to select a date range
Demonstrations
Default settings with time enabled:
{
startOfWeek: 'monday',
separator : ' ~ ',
format: 'DD.MM.YYYY HH:mm',
autoClose: false,
time: {
enabled: true
}
}
$(function()
{
$('a.show-option').click(function(evt)
{
evt.preventDefault();
$(this).siblings('.options').slideToggle();
});
})
運行效果如下圖所示:
注意事項
該插件依賴於JQuery庫,需要引入JQuery庫文件