Check-in And Check-out Date Range Picker - jQuery t-datepicker
| File Size: | 193 KB |
|---|---|
| Views Total: | 30454 |
| Last Update: | |
| Publish Date: | |
| Official Website: | Go to website |
| License: | MIT |
t-datepicker is a responsive, flexible, elegant, themeable, highly-configurable data range picker written in JavaScript (jQuery) and CSS(SASS).
Suitable for hotel app that enables the users to quickly select check-in and check-out dates in a convenient calendar popup.
Key features:
- 10 built-in themes.
- Multiple instances on a page.
- Custom date format.
- Useful options and API.
How to use it:
1. Insert the jQuery t-datepicker plugin's files into the document which has the latest jQuery library loaded.
<link href="css/t-datepicker.min.css" rel="stylesheet" type="text/css">
<script src="https://code.jquery.com/jquery-3.3.1.min.js"
integrity="sha384-tsQFqpEReu7ZLhBV2VZlAu7zcOV+rXbYlF2cqB8txI/8aZajjp4Bqd+V6D5IgvKT"
crossorigin="anonymous"></script>
<script src="js/t-datepicker.min.js"></script>
2. Include a theme of your choice after the core stylesheet. All possible themes:
- blue
- bluegrey
- cyan
- green
- lime
- main
- organge
- purple
- teal
- yellow
<link href="css/themes/t-datepicker-bluegrey.css" rel="stylesheet" type="text/css">
3. Create check-in and check-out elements on the webpage.
<div class="t-datepicker"> <div class="t-check-in"></div> <div class="t-check-out"></div> </div>
4. Call the function to generate a default date range picker.
$(function(){
$('.t-datepicker').tDatePicker();
});
5. To config the date range picker, pass in the following parameters to the tDatePicker() method.
$('.t-datepicker').tDatePicker({
// auto close after selection
autoClose : true,
// animation speed in milliseconds
durationArrowTop : 200,
// the number of calendars
numCalendar : 2,
// localization
titleCheckIn : 'Check In',
titleCheckOut : 'Check Out',
titleToday : 'Today',
titleDateRange : 'night',
titleDateRanges: 'nights',
titleDays : [ 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa', 'Su' ],
titleMonths : ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'Septemper', 'October', 'November', "December"],
// the max length of the title
titleMonthsLimitShow : 3,
// replace moth names
replaceTitleMonths : null,
// e.g. 'dd-mm-yy'
showDateTheme : null,
// icon options
iconArrowTop : true,
iconDate : '➜',
arrowPrev : '❮',
arrowNext : '❯',
// https://fontawesome.com/v4.7.0/icons/
// iconDate: '<i class="li-calendar-empty"></i><i class="li-arrow-right"></i>',
// arrowPrev: '<i class="fa fa-chevron-left"></i>',
// arrowNext: '<i class="fa fa-chevron-right"></i>',
// shows today title
toDayShowTitle : true,
// showss dange range title
dateRangesShowTitle : true,
// highlights today
toDayHighlighted : false,
// highlights next day
nextDayHighlighted : false,
// an array of days
daysOfWeekHighlighted: [0,6],
// custom date format
formatDate : 'yyyy-mm-dd',
// dateCheckIn: '25/06/2018', // DD/MM/YY
// dateCheckOut: '26/06/2018', // DD/MM/YY
dateCheckIn : null,
dateCheckOut : null,
startDate : null,
endDate : null,
// limits the number of months
limitPrevMonth : 0,
limitNextMonth : 11,
// limits the number of days
limitDateRanges : 31,
// true -> full days || false - 1 day
showFullDateRanges : false,
// DATA HOLIDAYS
// Data holidays
fnDataEvent : null
});
6. API methods.
// shows the date range picker
$('.t-datepicker').tDatePicker('show');
// hides the date range picker
$('.t-datepicker').tDatePicker('hide');
// updates the date range picker
$('.t-datepicker').tDatePicker('update', '2018-07-17');
// updates the check-in date
$('.t-datepicker').tDatePicker('updateCI', '2018-07-17');
// updates the check-out date
$('.t-datepicker').tDatePicker('updateCO', '2018-07-17');
// sets the start date
$('.t-datepicker').tDatePicker('setStartDate', '2018-07-17');
// sets the end date
$('.t-datepicker').tDatePicker('setEndDate', '2018-07-25');
// returns Date Object
// e.g: Wed Jul 18 2018 07:00:00 GMT+0700
$('.t-datepicker').tDatePicker('getDate');
// returns Date Object
$('.t-datepicker').tDatePicker('getDates');
// returns Date String
// e.g: '2018-07-17'
$('.t-datepicker').tDatePicker('getDateInput');
// returns [Date String, Date String]
// e.g: Return ['2018-07-17', '2018-07-18']
$('.t-datepicker').tDatePicker('getDateInput');
// returns [UTC CI, UTC CO]
// e.g: Return [1531785600000, 1531872000000]
$('.t-datepicker').tDatePicker('getDateUTCs');
// returns Date Object
// e.g: Wed Jul 18 2018 07:00:00 GMT+0700
$('.t-datepicker').tDatePicker('getStartDatet');
// returns Date Object
// e.g: 1531785600000
$('.t-datepicker').tDatePicker('getStartDateUTC');
// returns Date Object
// e.g: Wed Jul 18 2018 07:00:00 GMT+0700
$('.t-datepicker').tDatePicker('getEndDate');
// returns Date Object
// e.g: 1531785600000
$('.t-datepicker').tDatePicker('getDateUTC');
// returns Date Object
// e.g: Wed Jul 18 2018 07:00:00 GMT+0700
$('.t-datepicker').tDatePicker('getEndDate');
7. Event handlers.
$('.t-datepicker').tDatePicker()
.on('clickDateCI',function(e, dateCI) {
// after click check-in date
})
.on('clickDateCO',function(e, dateCO) {
// after click check-out date
})
.on('beforeShowDay',function(e) {
// before show
})
.on('afterShowDay',function(e) {
// after show
})
.on('toggleAfterHideDay',function(e) {
// after hide
})
.on('afterCheckOut',function(e, dataDate) {
// console.log(new Date(dataDate[0])) // check-in
// console.log(new Date(dataDate[1])) // check-out
})
.on('eventClickDay',function(e, dataDate) {
// console.log(new Date(dataDate[0])) // check-in
// console.log(new Date(dataDate[1])) // check-out
})
.on('selectedCI',function(e, slDateCI) {
// after check-in date selected
})
.on('selectedCO',function(e, slDateCO) {
// after check-out date selected
})
.on('onChangeCI',function(e, changeDateCI) {
// after check-in date changed
})
.on('onChangeCO',function(e, changeDateCO) {
// after check-out date changed
})
Changelog:
2018-07-16
- update new option dateRangeHover and only picker
2018-07-14
- Bugfix
This awesome jQuery plugin is developed by crazychicken. For more Advanced Usages, please check the demo page or visit the official website.










