0

单击下一个(或上一个)月份时,我想获取日期选择器的第一个显示日期。日期选择器显示 2 个月(例如 11 月和 12 月),当我单击下个月时,我想触发一个函数,其中第一个日期作为变量,如下所示:

$(document).on('click','.ui-datepicker-next',function(){
  test(first_date);
});

$(function() {
    $( "#vak_kalender" ).datepicker({      
        numberOfMonths: 2,
        minDate: new Date(),            
        maxDate: new Date(volgend_jaar, 24,0),
        beforeShowDay:function highlightDays(date) {
        var timestamp = new Date(Date.UTC(date.getFullYear(),date.getMonth(),date.getDate()));
  var timestamp = timestamp/1000;
  if ($.inArray(timestamp, verhuurt) != -1){
               return [false,'verhuurt'];
            }
        else if ($.inArray(timestamp, gesloten) != -1) {
              return [false,'gesloten'];
          }
        else if ($.inArray(timestamp, wisseldagen) != -1) {
              return [true,'wisseldag'];
          }
        else{return [true, 'beschikbaar'];}
        },
        showWeek: true 
    });  
});
4

1 回答 1

0

以下应该工作

$( "#datepicker, #datepicker2" ).datepicker({ numberOfMonths: 2 });
$(document).on('click','.ui-datepicker-next',function(){
  var picker = $.datepicker._curInst;
  var date = new Date(picker.selectedYear, picker.selectedMonth, 1);
  console.log(date);
});

JSFiddle

编辑

您使用的是内联日期选择器,因此访问日期选择器的方式略有不同。以下应该工作。

$("#datepicker1" ).datepicker({ numberOfMonths: 2 });
$(document).on('click','.ui-datepicker-next',function(){
    var picker = $("#datepicker1").data("datepicker");
    var date = new Date(picker.selectedYear, picker.selectedMonth, 1);
    console.log(date);
});

JSFiddle

于 2013-10-16T19:45:39.903 回答