在daterangepicker中单击“选定日期”时的回调函数

时间:2017-06-06 06:12:31

标签: javascript jquery twitter-bootstrap daterangepicker

使用最新版本的Daterangepicker for bootstrap

对于以下日历(其网站中使用的标准示例):

$('#demo').daterangepicker({
    "singleDatePicker": true,
    "autoApply": true,
    "startDate": "05/31/2017",
    "endDate": "06/06/2017"
}, function(start, end, label) {
  console.log("a date is selected")
});

当我在日历中选择日期时,会正确调用给定的回调函数。但是,如果我选择已选择的活动日期,则弹出窗口将关闭,但不会调用回调函数。据我所知,当选择相同的日期时,没有提供触发功能的任何机会。

所以,我的问题是:是否有一种黑客方式可以在选择相同日期时调用回调函数?

例如,我尝试使用以下代码将侦听器添加到活动单元格中,但它也没有被触发:

 $('td.active.start-date.active.end-date.available').on('click', function () {
   console.log('the same date is selected')
 })

1 个答案:

答案 0 :(得分:2)

您可以做的是将一个额外的事件绑定到您的输入,当您选择一个选项时将调用该事件。请参阅以下代码(假设带有id demo的元素是您的输入)因为您已经使用了jQuery,我的示例也使用了它:

$('#demo').on('change.datepicker', function(ev){
  var picker = $(ev.target).data('daterangepicker');
  console.log(picker.startDate); // contains the selected start date
  console.log(picker.endDate); // contains the selected end date 

  // ... here you can compare the dates and call your callback.
});

希望这会有所帮助!