Jquery datetimepicker - время опережения на 1 час - PullRequest
2 голосов
/ 11 мая 2011

Я сейчас использую надстройку jQuery datetimepicker из здесь

Она работает почти идеально, но я озадачен тем, как добавить к ней небольшую функциональность,В настоящее время у меня есть два экземпляра на странице, один для времени начала и один для времени окончания.Когда я выбираю время начала, я хотел бы автоматически заполнить время окончания временем начала + 1 час.

Может ли это быть выполнено без расширения основного скрипта?

Ответы [ 3 ]

2 голосов
/ 11 мая 2011

да, он расширяет JQuery-UI Datepicker, который имеет различные обратные вызовы для обработки выбора

, вы можете проверить документацию onSelect и использовать ее на таймере

$('#example').datetimepicker({
    onSelect: function(){
              //add 1 hour to start time
        }
});
0 голосов
/ 11 мая 2011

Следующее добавит один час к датчику времени окончания.

$('#dtStartDate').datetimepicker({
    onSelect: function(){
       var startDate = $('#dtStartDate').datetimepicker('getDate'));
       var endDate = new Date(parseFloat(startDate.setHours(startDate.getHours()+1)))

       //Get the ending date datepart
       var endDateDatePart = endDate.getFullYear() + '/' + endDate.getMonth() + '/' + endDate.getDate();

       //calculate the ending date time part including AM/PM
       var endDateTimePart;
       if (endDate.getHours() > 12) { endDateTimePart = endDate.getHours()-12 + ':' + endDate.getMinutes() + ' PM';} else {endDateTimePart = endDate.getHours() + ':' + endDate.getMinutes() + ' AM';}
       $('#dtEndDate').datetimepicker('setDate', endDateDatePart + ' ' + endDateTimePart );
   }
});
0 голосов
/ 11 мая 2011

В нижней части страницы отображается функция «Получить и установить дату и время».

var ex13 = $('#example13');

ex13.datetimepicker();

$('#example13_setdt').click(function(){
    ex13.datetimepicker('setDate', (new Date()) );
});

$('#example13_getdt').click(function(){
    alert(ex13.datetimepicker('getDate'));
});

Не могли бы вы использовать это?Или, конечно, вам придется добавить час к getDate.

$("#endtime").datetimepicker("setDate", $("#starttime").datetimepicker("getDate"));
...