jQuery DateTimePicker 将当前日期增加 5 分钟

jQuery DateTimePicker add 5 minutes to current date

我使用 jQuery 日期时间选择器,我想将日期时间选择器打开的时间设置为当前日期 +5 分钟。 示例:如果我在 12:00 打开日期时间选择器,时间栏应该让我选择最大值 12:05。这可能吗?

    $( ".DateTimePickerTodayAudit" ).datetimepicker({
      numberOfMonths: 1,
      showCurrentAtPos: 0,
      changeMonth: true,
      changeYear: true,
      dateFormat: "yy-mm-dd",
      maxDate: 0,
      showOtherMonths: true,
      selectOtherMonths: true

    });     

根据您的情况,有多种可能性,但是。处理此问题的一种方法是提供一组时间。

examples retrieved from datetimepicker docs

allowTimes 选项 TimePicker 示例 #

javaScript

jQuery('#datetimepicker5').datetimepicker({
 datepicker:false,
 allowTimes:[
  '12:00', '13:00', '15:00', 
  '17:00', '17:05', '17:20', '19:00', '20:00'
 ]
});

还有最小和最大可能性。虽然下面的例子是 minTime.

设置选项运行时 DateTimePicker #

如果select天是星期六,则最小设置11:00,否则8:00

javaScript

var logic = function( currentDateTime ){
  // 'this' is jquery object datetimepicker
  if( currentDateTime.getDay()==6 ){
    this.setOptions({
      minTime:'11:00'
    });
  }else
    this.setOptions({
      minTime:'8:00'
    });
};
jQuery('#datetimepicker_rantime').datetimepicker({
  onChangeDateTime:logic,
  onShow:logic
});

我找到了一个替代解决方案:我创建了一个 javaScript 函数,该函数 returns 当前日期 +5 分钟,并为 DateTimePicker 的 maxDate 属性 分配了函数返回值。

     function currDate()
    {
    var d = new Date();
    var y = d.getFullYear();
    var m = d.getMonth() ;
    var da = d.getDate();
    var h = d.getHours();
    var mi = d.getMinutes()+5;
    var se = d.getSeconds();
    var mDate = new Date(y, m, da, h, mi,se);
    return mDate;

    };

$( ".DateTimePickerTodayAudit" ).datetimepicker({
        numberOfMonths: 1,
        showCurrentAtPos: 0,
        changeMonth: true,
        changeYear: true,
        dateFormat: "yy-mm-dd",
        maxDate:currDate(),
        showOtherMonths: true,
        selectOtherMonths: true,
        });