(Изм)
Я использую jquery.mtz.monthpicker с jquery.
Я хочу ограничить будущий месяц, но я думаю, что в jquery.ui.datepicker нет таких параметров, как "maxDate".
$('input[name*="from"]').monthpicker({startYear:1970,finalYear:<?=date('Y')?>,pattern:'yyyy-mm'}).bind('monthpicker-show', function (e, year) {
$('input[name*="from"]').monthpicker('disableMonths', []); // (re)enables all
if (year === <?=date('Y')?> ) {
var curMonth = <?=date('n')?>;
var months = new Array();
var j = 0;
for (var i = curMonth+1; i <= 12; i++)
{
months[j++] = i;
}
$('input[name*="from"]').monthpicker('disableMonths', months);
}
});
Я закодировал вот так. только можно выбрать текущий и прошлые месяцы. но это не работает. в чем проблема?
var months = new Array();
var j = 0;
for (var i = <?=date('n')?>+1; i <= 12; i++)
{
months[j++] = i;
}
$('input[name*="from"]').monthpicker({startYear:1970,finalYear:<?=date('Y')?>,pattern:'yyyy-mm'});
for(var i = 0; i < $('input[name*="from"]').length; i++){
$($('input[name*="from"]')[i]).monthpicker("disableMonths",months);
$($('input[name*="from"]')[i]).monthpicker().bind('monthpicker-change-year', function(e, year){
var item = $(e.currentTarget);
if(year === '<?=date("Y")?>'){
$(item).monthpicker('disableMonths', months);
} else {
$(item).monthpicker('disableMonths', []);
}
});
}
Я решил.
Прежде всего, удалить цепочку методов.
Во-вторых, событие monthpicker-show не имеет параметра 'year'.
Я думаю, что были ключевые моменты.