2016-09-28 2 views
0

Я пытаюсь выполнить вызов функции при загрузке datepicker, когда пользователь щелкает за пределами календаря.Bootstrap datepicker close function

Когда пользователь выбирает дату datepicker автоматически закрывается, то же самое, когда пользователь щелкает за пределами div datepicker, он закрывается.

Так что мой вопрос: как я могу понять, когда он закрыт? Я знаю, что это событие называется onClose, но она работает только тогда, когда страница загружается

fiddle

ответ

1

.on("hide"... Используйте событие.

Из документов:

$('.datepicker').datepicker() 
    .on(picker_event, function(e) { 
    // `e` here contains the extra attributes 
}); 

Для примера ... picker_event будет hide.
Что-то вроде:

var checkin = $('#date-from').datepicker({ 
    format: 'dd/mm/yyyy', 
    startDate: '+1d', 
    weekStart: 1, 
    beforeShowDay: function(date) { 
    return date.valueOf() >= now.valueOf(); 
}, 
    autoclose: true 
}).on('changeDate', function(ev) { 
    alert("changed"); 
}).on('hide', function(ev) { // <----------- 
    alert("hide"); 
}); 
1

Согласно документации здесь: https://bootstrap-datepicker.readthedocs.io/en/latest/events.html#hide

$('.datepicker').datepicker() 
    .on('hide', function(e) { 
     // `e` here contains the extra attributes 
    }); 

Или

$('.datepicker').datepicker() 
    .on('hide', myFunction); 

А затем создать myFunction

function myFunction(e) { 
    // whatever you want :) 
} 

Вот ваш пример с немного изменить https://jsfiddle.net/mr3dxj5p/6/ здесь вы можете видеть, что я просто изменить changeDate к hide для предупреждения выстрелил сообщение