jQuery UI DateTimePicker向当前日期添加3天,并使用dp.change方法在datePickerStart和datePickerEnd日期中禁用将来的日期

阿赫塔尔·穆尼尔(Akhtar Munir)

因此,在大量搜索堆栈溢出之后,我在下面的代码中找不到更好的解决方案。我的实际问题是,我有datetimepicker,我想向中添加3天datePickerStart并禁用它的过去日期,也dp.change希望将具有当前日期的那三天显示在下一个datetimepicker中,datePickerEnd并禁用它的过去和将来的日期除了添加的3天。我的意思是说仅在下一个选择器中显示3天。例如,如果用户选择12日期,则它将在下一个选择器中显示12至14个日期,如果用户选择21日日期,则应在下一个选择器中显示21至23个日期,依此类推。按照我编写的代码,可以正常工作,但不能与上述功能配合使用。

$('.datePickerStart').datetimepicker({
    format: 'DD-MM-YYYY',
    minDate: new Date()
}).on('dp.change', function(e){
    var parent = $($(this).parents('.row')[0]),
        endDate = parent.find('.datePickerEnd');
    endDate.data("DateTimePicker").minDate(e.date).show();
});

$('.datePickerEnd').datetimepicker({
    format: 'DD-MM-YYYY',
    minDate: new Date(),
    useCurrent: false
}).on('dp.change', function(e){
    var parent = $($(this).parents('.row')[0]),
        startDate = parent.find('.datePickerStart');
    startDate.data("DateTimePicker").maxDate(e.date);
});

任何帮助,将不胜感激。提前致谢。

阿马尔

希望这可以帮助!

$(function() {
  $('.datePickerStart').datetimepicker({
  minDate: new Date()
  });
  $('.datePickerEnd').datetimepicker();
  $(".datePickerStart").on("dp.change", function(e) {
    $('.datePickerEnd').data("DateTimePicker").minDate(e.date);
      var dt = new Date(e.date);
      dt.setDate(dt.getDate() + 2);
      $('.datePickerEnd').data("DateTimePicker").maxDate(dt);
  });
});

小提琴

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章