2016-08-17 3 views
0

Я выбираю только год из выпадающего списка. Вот мой код:jquery datepicker onselect год

$('#year1').datepicker({ 
    changeMonth: false, 
    changeYear: true, 
    showButtonPanel: false, 
    dateFormat: 'yy', 
    yearRange: "-2:+0", 
    onClose: function(dateText, inst) { 
     var year = $("#ui-datepicker-div .ui-datepicker-year :selected").val(); 
     $(this).datepicker('setDate', new Date(year, 1, 1)); 
    } 
}); 

Теперь я хочу закрыть панель, когда я выбираю год спуска. Но он не близок к выбору года. Но когда я щелкаю в другом месте, он закрывается. Я пробовал onSelect insted of onClose событие, но это событие не срабатывает при выборе года. Я думаю, что это событие срабатывает при выборе даты. Может ли кто-нибудь помочь мне закрыть его, когда я выбираю только год вниз. Спасибо.

ответ

0

Вы можете использовать опцию onChangeMonthYear для запуска вашей функции, когда пользователь выбирает год из раскрывающегося списка. Затем вы можете использовать метод hide() для «закрытия» сборщика.

Вот пример кода:

$('#year1').datepicker({ 
 
    changeMonth: false, 
 
    changeYear: true, 
 
    showButtonPanel: false, 
 
    dateFormat: 'yy', 
 
    yearRange: "-2:+0", 
 
    onChangeMonthYear: function(year, month, inst){ 
 
    // Set date to picker 
 
    $(this).datepicker('setDate', new Date(year, 1, 1)); 
 
    // Hide (close) the picker 
 
    $(this).datepicker('hide'); 
 
    // Blur to let the picker open on focus in 
 
    $(this).blur(); 
 
    } 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.11.4/jquery-ui.js"></script> 
 
<link href="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.11.4/jquery-ui.css" rel="stylesheet"/> 
 

 
<input type="text" id="year1">

Смежные вопросы