Jquery 日期选择器显示一年中的所有日期
Jquery datepicker display all days of month for a year
我在文本框上使用 jquery 日期选择器来输入用户出生 date.For 验证目的我将最大年份设置为当前年份的“-16Y”,对于我设置的最小年份范围为 yearRange: '1920:c'
。问题是当我在浏览器中显示它时,日期选择器没有显示最大年份(即 1999 年)的所有日期。我认为 jquery 将其设置为当天的最大日期(8 月 6 日)。因此要解决此问题?
这是我的日期选择器代码:
$("#YearOFBirth").datepicker({
maxDate: "-16Y",
//showOn: "both",
// buttonImage: "",
dateFormat: "mm/dd/yy",
changeMonth: true,
changeYear: true,
yearRange: '1920:c'
}).keydown(function (e) {
if (e.keyCode == 8 || e.keyCode == 46) {
$(e.target).val("");
} else {
e.preventDefault();
return false;
}
});
正如您在此图片中看到的那样,禁用 6 日后的所有天数对于 1999 年都是不正确的
注意:我搜索了这个,但没有找到。我什至不知道如何正确地问这个问题
自己计算最大日期:
var maxDate = new Date(new Date().getFullYear() - 16, 11, 31);
然后将 maxDate
提供给您的日期选择器。像这样,您拥有 16 年前一年中的所有可用天数。由于一年的最后一天总是 YYYY-12-31,因此对其进行硬编码并不是坏习惯。
我在文本框上使用 jquery 日期选择器来输入用户出生 date.For 验证目的我将最大年份设置为当前年份的“-16Y”,对于我设置的最小年份范围为 yearRange: '1920:c'
。问题是当我在浏览器中显示它时,日期选择器没有显示最大年份(即 1999 年)的所有日期。我认为 jquery 将其设置为当天的最大日期(8 月 6 日)。因此要解决此问题?
这是我的日期选择器代码:
$("#YearOFBirth").datepicker({
maxDate: "-16Y",
//showOn: "both",
// buttonImage: "",
dateFormat: "mm/dd/yy",
changeMonth: true,
changeYear: true,
yearRange: '1920:c'
}).keydown(function (e) {
if (e.keyCode == 8 || e.keyCode == 46) {
$(e.target).val("");
} else {
e.preventDefault();
return false;
}
});
正如您在此图片中看到的那样,禁用 6 日后的所有天数对于 1999 年都是不正确的
注意:我搜索了这个,但没有找到。我什至不知道如何正确地问这个问题
自己计算最大日期:
var maxDate = new Date(new Date().getFullYear() - 16, 11, 31);
然后将 maxDate
提供给您的日期选择器。像这样,您拥有 16 年前一年中的所有可用天数。由于一年的最后一天总是 YYYY-12-31,因此对其进行硬编码并不是坏习惯。