【发布时间】:2012-03-30 03:55:51
【问题描述】:
我想在我的 datePicker 上显示上个月和下个月的日期。就像这样:
这些日期也应该是可选择的。 jQuery 默认 datePicker 中是否有任何选项,或者我可以将 DatePicker 修改为这样吗?
【问题讨论】:
标签: jquery datepicker jquery-ui-datepicker
我想在我的 datePicker 上显示上个月和下个月的日期。就像这样:
这些日期也应该是可选择的。 jQuery 默认 datePicker 中是否有任何选项,或者我可以将 DatePicker 修改为这样吗?
【问题讨论】:
标签: jquery datepicker jquery-ui-datepicker
应该这样做:
<script>
$(function() {
$( "#datepicker" ).datepicker({
showOtherMonths: true,
selectOtherMonths: true
});
});
</script>
【讨论】:
正如isJustMe 所提到的,这就是这样做的方法。这是一个带有小插件的版本,我觉得它非常有用。如果您单击下个月或上个月的日期,日期选择器会自动切换到该月:
jQuery( '#datepicker' ).datepicker( {
showOtherMonths: true,
selectOtherMonths: true,
onSelect: function( string, element ) {
// Change month on click on other days
var day = element.selectedDay;
var mon = element.selectedMonth;
var year = element.selectedYear;
var target = jQuery( element.dpDiv ).find( '[data-year="'+year+'"][data-month="'+mon+'"]' ).filter( function() {
return jQuery(this).text().trim() == day;
} );
if( target.hasClass( 'ui-datepicker-other-month' ) ) {
if( parseInt( target.text().trim() ) > 15 ) {
jQuery( element.dpDiv ).find( '.ui-datepicker-prev' ).click();
} else {
jQuery( element.dpDiv ).find( '.ui-datepicker-next' ).click();
}
}
},
} );
在此感谢adeneo and his answer 获取当前元素。
【讨论】: