Я использую JqueryUI datepicker. Я хочу рассчитать количество дней в выбранном месяце и отобразить в текстовом поле.

$(function() {
    $('.date-picker').datepicker( {
        changeMonth: true,
        changeYear: true,
        showButtonPanel: true,
        dateFormat: 'MM yy',
        onClose: function(dateText, inst) { 
            $(this).datepicker('setDate', new Date(inst.selectedYear, inst.selectedMonth, 1));
        }
    });
});
.ui-datepicker-calendar {
    display: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js"></script>
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/base/jquery-ui.css" rel="stylesheet"/>


<label for="startDate">Date :</label>
<input name="startDate" id="startDate" class="date-picker" />
<input name="noofdays" id="noofdays" />
0
Jon 12 Ноя 2018 в 15:02

1 ответ

Лучший ответ

Обратный вызов onChangeMonthYear используется при изменении месяца или года в указателе даты. Для справки

Кроме того, включите пользовательский интерфейс JQuery после включения JQuery.

$('.date-picker').datepicker({
    changeMonth: true,
    changeYear: true,
    showButtonPanel: true,
    dateFormat: 'MM yy',
    onClose: function(dateText, inst){
        var year = inst.selectedYear, month = inst.selectedMonth+1;
        $(this).datepicker('setDate', new Date(year, month, 0));
        $("#noofdays").val(new Date(year, month, 0).getDate())
    },
    onChangeMonthYear:function(year, month, date){
        $("#noofdays").val(new Date(year, month,0).getDate());
    }
});
.ui-datepicker-calendar {
    display: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script>
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/base/jquery-ui.css" rel="stylesheet"/>

<label for="startDate">Date :</label>
<input name="startDate" id="startDate" class="date-picker" />
<input name="noofdays" id="noofdays" />
1
Vignesh Raja 12 Ноя 2018 в 12:33