【问题标题】:open full calendar based on selected month根据所选月份打开完整日历
【发布时间】:2016-12-02 11:09:55
【问题描述】:

我正在使用基础日期选择器和完整日历。我的要求是,

1) 如果我在日历中选择任何日期,

例如,当前月份是 2016 年 7 月。如果我在基础日期选择器中选择 11 月或任何其他月份的日期,则完整日历应从所选月份开始。请看小提琴。有一个日期选择器和一个完整的日历。

请看下面的小提琴。

jsfiddle

默认的完整日历是在七月。开始时有一个 mor 日期选择器。如果我更改该日期选择器上的任何日期,那么此时 fullCalendar 本身应该在所选月份上运行。

	var nowTemp = new Date();
      var now = new Date(nowTemp.getFullYear(), nowTemp.getMonth(), nowTemp.getDate(), 0, 0, 0, 0);
      var checkin = jQuery('#startDate').fdatepicker({
          format: "dd.mm.yyyy", 
      }).data('datepicker');
      var checkout = jQuery('#endDate').fdatepicker({
          format: "dd.mm.yyyy", 
      }).on('changeDate', function (ev) {
            
          }).data('datepicker');

          
  
  
  $(document).ready(function() {

    var date = new Date();
    var d = date.getDate();
    var m = date.getMonth();
    var y = date.getFullYear();

    var events_array = [
        {
        title: 'Test1',
        start: new Date(2012, 8, 20),
        tip: 'Personal tip 1'},
    {
        title: 'Test2',
        start: new Date(2012, 8, 21),
        tip: 'Personal tip 2'}
    ];

    $('#calendar').fullCalendar({
        header: {
            left: 'prev,next today',
            center: 'title',
            right: 'month,agendaWeek,agendaDay'
        },
        selectable: true,
        events: events_array,
        eventRender: function(event, element) {
            element.attr('title', event.tip);
        }
    });
});

$(".fc-header-left").hide();
$(".fc-header-right").hide();

  $(window).scroll(function() {
    if ($(this).scrollTop() > 1){  
        $('.fc-border-separate thead').addClass("sticky");
    }
    else{
        $('.fc-border-separate thead').removeClass("sticky");
    }
    });
	.tag{
  background-color:#000;
  color:#fff;
  padding:3px;
  max-height:60px;
  overflow: visible;  
  position: fixed;
  z-index:999;
}
.tag:after {
  content: "";
  border-top: 16px solid red;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  position: absolute;
  bottom: -16px;
  left: calc(50% - 8px);
}
.fc-border-separate thead.sticky{
	width: 100%;
	position: fixed;
	top:0px;
	left:0px;
	display:table;
	background: #fff;
}
</br>
    
Datepicker :<input type="text" id="endDate" name="end_datum" class="input_text" value=""></br></br></br></br>

<div style="border:solid 2px red;">
	<div id='calendar'></div>
</div>
<div class="tag hide" id="cal-info">

</div>

【问题讨论】:

    标签: jquery css datepicker calendar


    【解决方案1】:

    请查看更新的小提琴代码:

    http://jsfiddle.net/v98sb2a0/12/

    只要有人在 datepicker 控件中选择日期,我们就可以使用gotoDate method of full calendar 强制整个日历切换到不同的月份:

    以下是基础datepicker 及其changeDate 事件处理程序的代码,用于更改完整日历的月份:

    var checkin = jQuery('#startDate').fdatepicker({
          format: "dd.mm.yyyy",
        }).data('datepicker');
        var checkout = jQuery('#endDate').fdatepicker({
          format: "dd.mm.yyyy",
        }).on('changeDate', function(ev) {
    
          var startDate = new Date(ev.date);
          $('#calendar').fullCalendar('gotoDate', startDate);//modify the date of full calendar
    
        }).data('datepicker');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-09
      • 2021-10-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多