我正在使用datpicker来提供仅选择月份/年份的选项,当选择月份时,将使用所选值提交表单。
这是代码: jquery ui datepicker 使用此代码:
$(document).ready(function(){
$("#datepicker").datepicker( {
changeMonth: true,
changeYear: true,
showButtonPanel: false,
yearRange: "2013:2015",
onChangeMonthYear: function(dateText, inst) {
console.log($(".ui-datepicker-year :selected",$(this)).val()
+ "/" + $(".ui-datepicker-month :selected",$(this)).val());
}
});
});
但是返回的数字错误有两种情况。
(console.log中的值)
如果您尝试选择一个月,请说2013年10月,返回值为2013/9,这没关系。 现在,如果您尝试单击箭头转到2013年11月,则值为2013/9,这是错误的。同样从2013年12月跳至2012年1月返回2013/11
如果你到了“2015年12月”结束,然后点击下一个箭头,它会回到“jan 2013”的开头,这没关系,但是继续点击下一个箭头,你将会请注意,你不能再从“2013年12月”移动到“2014年1月”,它会回到“2013年1月”
感谢任何帮助。
答案 0 :(得分:1)
onChangeMonthYear()
接收新选择的年份和月份作为参数,因此您可以直接使用这些
...
minDate: new Date(2013, 1 - 1, 1),
maxDate: new Date(2015, 12 - 1, 31),
onChangeMonthYear: function(year, month, inst) {
console.log(
year + "/" + month
);
}