Как отключить закрытие DatePicker на jQuery UI Datepicker - PullRequest
0 голосов
/ 07 марта 2012

Когда я открываю средство выбора даты следующим образом:

$("#checkindate,#checkoutdate").datepicker({
    onClose: {
       //I'd like to disable the closing
    }
);

Я бы хотел предотвратить закрытие диалогового окна выбора даты в зависимости от условия.Идеальным было бы, чтобы return false остановило это событие.

Я попытался изменить исходный код, и нет тривиального решения.

Что я хочу сделать, так это иметь возможность выбратьдата оформления заказа без повторного открытия другого диалогового окна.

Есть идеи?

Ответы [ 5 ]

1 голос
/ 02 апреля 2012
$('#datepicker').blur(function(){
$(this).datepicker('show')
})

откройте http://jqueryui.com/demos/datepicker/ и скопируйте код на консоль javascript и посмотрите, что произойдет

1 голос
/ 07 марта 2012

Я не думаю, что можно выбрать несколько дат из одного средства выбора даты. Вы, вероятно, должны будете сделать что-то вроде демонстрации их диапазона дат: http://jqueryui.com/demos/datepicker/#date-range

0 голосов
/ 15 июня 2015

В этом вопросе: jQuery UI Datepicker - выбор нескольких дат в принятом ответе объясняется, как реализовать выбор нескольких дат в одном датчике.

Чтобы предотвратить закрытие DatePicker после выбора даты, вы можете указать это в опции onClose :

$(this).data('datepicker').inline = false;

И добавьте это в onSelect option:

$(this).data('datepicker').inline = true;
0 голосов
/ 17 апреля 2013

Потратив около суток, наконец-то получил,

$( "#selector" ).datepicker({
        onSelect: function ( dateText, inst ) {
             this._updateDatepicker(inst);
         }
});

Для всего кода, нажмите здесь .

0 голосов
/ 28 февраля 2013
var selectTask = function(selectedDate, calendar) { // pretends to remain open                         
                     setTimeout(function() {
                        $(selector).datepicker('show'); // don't go away ...
                     }, 0);
                 };
// datepicker instance
$(selector).datepicker({ onSelect:selectTask, duration:0 });

Это иллюзия предотвращения закрытия;может достичь цели.

...