Jquery 引导日期选择器下一天和前一天按钮
我正在使用,我想创建两个按钮(下一个和上一个),使日历选择器使用jQuery从当前选择的日期转到下一个自由日或上一个自由日 它应该与默认事件处理程序一起工作,该处理程序将告诉我所选日期 我所拥有的只是:Jquery 引导日期选择器下一天和前一天按钮,jquery,bootstrap-datepicker,Jquery,Bootstrap Datepicker,我正在使用,我想创建两个按钮(下一个和上一个),使日历选择器使用jQuery从当前选择的日期转到下一个自由日或上一个自由日 它应该与默认事件处理程序一起工作,该处理程序将告诉我所选日期 我所拥有的只是: // Build dayoff dates var $dayOffDates = [], $dayOffFormattedDates = []; $.each(data.dayoff_dates, function (i, e) { $dayOffDates.push(new D
// Build dayoff dates
var $dayOffDates = [],
$dayOffFormattedDates = [];
$.each(data.dayoff_dates, function (i, e) {
$dayOffDates.push(new Date(e));
$dayOffFormattedDates.push(new Date(e).format('yyyy-mm-dd'));
});
// Check if current date is day off
var $isDayOff = $.inArray(new Date().format('yyyy-mm-dd'), $dayOffFormattedDates);
// Initialize date picker
var $firstCalendarPicker.datepicker({
language: 'de',
format: 'dd/mm/yyyy',
startDate: '0d',
endDate: '+<?php echo ($this->_options->weeks_advance) ? $this->_options->weeks_advance : '3'; ?>w', // backend value
maxViewMode: 0,
todayBtn: ($isDayOff === -1) ? 'linked' : false,
todayHighlight: false,
toggleActive: true,
datesDisabled: $dayOffDates
});
$('.next').click(function(){
/*
* @todo should navigate to the next free date
*/
});
$('.previous').click(function(){
/*
* @todo should navigate to the previous free date
*/
});
$firstCalendarPicker.on('changeDate', function (e) {
if (typeof e != 'undefined' && typeof e.date != 'undefined') {
//e.date
}
});
//构建日期
var$dayOffDates=[],
$dayOffFormattedDates=[];
$.each(data.dayoff_日期,函数(即,e){
$dayOffDates.push(新日期(e));
$DayOfFormattedDates.push(新的日期(e).格式('yyyy-mm-dd'));
});
//检查当前日期是否为休息日
变量$isDayOff=$.inArray(新日期().format('yyyyy-mm-dd'),$dayOffFormattedDates);
//初始化日期选择器
var$firstCalendarPicker.datepicker({
语言:'德',
格式:“dd/mm/yyyy”,
起始日期:“0d”,
endDate:“+w”,//后端值
maxViewMode:0,
todayBtn:($isDayOff==-1)?“链接”:false,
今天的亮点:错,
对,,
datesDisabled:$dayOffDates
});
$('.next')。单击(函数(){
/*
*@todo应该导航到下一个自由日期
*/
});
$('.previous')。单击(函数(){
/*
*@todo应导航到上一个自由日期
*/
});
$firstCalendarPicker.on('changeDate',函数(e){
if(typeof e!=“未定义”&&typeof e.date!=“未定义”){
//e、 日期
}
});
此外,如果没有可用的过去或未来天数,则应禁用“下一个”或“上一个”按钮
附言:
此脚本还使用来简化某些功能,如检查当前日期是否已关闭。//导航到下一个日期
// Navigate to next date
$('.next').click(function(){
var $endDate = new Date($timePickerTableWrap.data('branch-end-date')),
$selectedDay = $firstCalendarPicker.datepicker('getDate');
var $tmpSelectedDay= new Date($selectedDay);
$tmpSelectedDay.setDate($tmpSelectedDay.getDate() + 1);
// Limit navigation
if($tmpSelectedDay.getTime() / 1000 < $endDate.getTime() / 1000)
{
$firstCalendarPicker.datepicker('update',$tmpSelectedDay);
}
});
// Navigate to previous date
$('.previous').click(function(){
var $startDate = new Date($timePickerTableWrap.data('branch-start-date')),
$selectedDay = $firstCalendarPicker.datepicker('getDate');
var $tmpSelectedDay = new Date($selectedDay);
$tmpSelectedDay.setDate($tmpSelectedDay.getDate() -1);
// Limit navigation
if($tmpSelectedDay.getTime() / 1000 >= $startDate.getTime() / 1000)
{
$firstCalendarPicker.datepicker('update',$tmpSelectedDay);
}
});
$('.next')。单击(函数(){
var$endDate=新日期($timePickerTableWrap.data('branch-end-Date')),
$selectedDay=$firstCalendarPicker.datepicker('getDate');
var$tmpSelectedDay=新日期($selectedDay);
$tmpSelectedDay.setDate($tmpSelectedDay.getDate()+1);
//极限导航
如果($tmpSelectedDay.getTime()/1000<$endDate.getTime()/1000)
{
$firstCalendarPicker.datepicker('update',$tmpSelectedDay);
}
});
//导航到以前的日期
$('.previous')。单击(函数(){
var$startDate=新日期($timePickerTableWrap.data('branch-start-Date')),
$selectedDay=$firstCalendarPicker.datepicker('getDate');
var$tmpSelectedDay=新日期($selectedDay);
$tmpSelectedDay.setDate($tmpSelectedDay.getDate()-1);
//极限导航
如果($tmpSelectedDay.getTime()/1000>=$startDate.getTime()/1000)
{
$firstCalendarPicker.datepicker('update',$tmpSelectedDay);
}
});
工作一段时间后,这只提供到下一个或上一个日期的导航
注意,$startDate和$endDate有两个范围限制//导航到下一个日期
$('.next')。单击(函数(){
var$endDate=新日期($timePickerTableWrap.data('branch-end-Date')),
$selectedDay=$firstCalendarPicker.datepicker('getDate');
var$tmpSelectedDay=新日期($selectedDay);
$tmpSelectedDay.setDate($tmpSelectedDay.getDate()+1);
//极限导航
如果($tmpSelectedDay.getTime()/1000<$endDate.getTime()/1000)
{
$firstCalendarPicker.datepicker('update',$tmpSelectedDay);
}
});
//导航到以前的日期
$('.previous')。单击(函数(){
var$startDate=新日期($timePickerTableWrap.data('branch-start-Date')),
$selectedDay=$firstCalendarPicker.datepicker('getDate');
var$tmpSelectedDay=新日期($selectedDay);
$tmpSelectedDay.setDate($tmpSelectedDay.getDate()-1);
//极限导航
如果($tmpSelectedDay.getTime()/1000>=$startDate.getTime()/1000)
{
$firstCalendarPicker.datepicker('update',$tmpSelectedDay);
}
});
工作一段时间后,这只提供到下一个或上一个日期的导航
注意,$startDate和$endDate有两个范围限制