air -datepicker js: час 2

#javascript #jquery #datepicker #timepicker

#javascript #jquery #datepicker #timepicker

Вопрос:

Я стараюсь устанавливать часы ( 2 часа) на фактический день, а не на другие.

Пример:

Сегодня 18 октября, время: 10 утра.

  • Если я нажму (без изменения даты) -> Время 12 вечера.
  • Если я нажму и выберу завтра (19 октября) -> Я выбираю любое время.

Сегодня 19 октября, время: 08 утра.

  • Если я нажму (без изменения даты) -> Время 10 утра.
  • Если я нажму и выберу завтра (20 октября) -> Я выбираю любое время.

PS: Если возможно, я хочу отключить запись во входных данных (потому что мы можем изменить время)

Спасибо

     var start = new Date()
	var hour = start.getHours() 2;

	
	$('#date').datepicker({
        language: 'en',
		timepicker: true,
		minHours: hour
	})  
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<script src="https://cdnjs.cloudflare.com/ajax/libs/air-datepicker/2.2.3/js/datepicker.js"></script>

<script src="https://cdnjs.cloudflare.com/ajax/libs/air-datepicker/2.2.3/js/i18n/datepicker.en.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/air-datepicker/2.2.3/css/datepicker.css" rel="stylesheet"/>


<input type='text' id="date" class="" />  

Ответ №1:

РЕДАКТИРОВАТЬ: я думал, вы хотите отключить предыдущие даты (все <сейчас 2 часа). Если нет, просто измените minDate: start на startDate: start .

Попробуйте с:

 var start = new Date();

// first available date and time
start.setHours(start.getHours()   2);

$('#date').datepicker({
  language: 'en',
  timepicker: true,
  minDate: start,
  onSelect: function(fd, d, picker) {
    if (d < start) {
      return;
    }

    if (d.getDate() == start.getDate() amp;amp;
      d.getMonth() == start.getMonth() amp;amp;
      d.getYear() == start.getYear()) {
      // set minHours to start hours
      picker.update({
        minHours: start.getHours()
      });
    } else {
      // set minHours to 0 hours
      picker.update({
        minHours: 0
      });
    }
  }
});  
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<script src="https://cdnjs.cloudflare.com/ajax/libs/air-datepicker/2.2.3/js/datepicker.js"></script>

<script src="https://cdnjs.cloudflare.com/ajax/libs/air-datepicker/2.2.3/js/i18n/datepicker.en.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/air-datepicker/2.2.3/css/datepicker.css" rel="stylesheet" />


<input type='text' id="date" class="" />  

Кроме того, документы air-timepicker: http://t1m0n.name/air-datepicker/docs /

Комментарии:

1. Спасибо за вашу помощь, это идеально! 🙂