我有像这样的jquery datepicker
$birth.datepicker({
onSelect: function(dateText, inst) {
$(this).parent().find("label#error").html("");
$gender.focus();
},
yearRange: '1950:2006',
changeMonth: true,
changeYear: true,
showOtherMonths: true,
selectOtherMonths: true,
dateFormat: 'yy-mm-dd',
defaultDate: new Date(2006,01,01),
});
我正在尝试修改此代码,因此它将占用当前年份并将其减去10,如此
$birth.datepicker({
var currentYear = new Date();
onSelect: function(dateText, inst) {
$(this).parent().find("label#error").html("");
$gender.focus();
},
yearRange: '1950:document.write(currentYear.getFullYear() - 10)',
changeMonth: true,
changeYear: true,
showOtherMonths: true,
selectOtherMonths: true,
dateFormat: 'yy-mm-dd',
defaultDate: new Date(2006,01,01),
});
上面的代码不起作用,它打破了我的日期选择器....是否有更好的方法来做到这一点?
答案 0 :(得分:2)
变化:
yearRange: '1950:document.write(currentYear.getFullYear() - 10)',
为:
yearRange: '1950:-10',
这将使1950年的年份数量比当年减少10年。
<强> jsFiddle example 强>
来自yearRange选项的documentation:
年份下拉列表显示的年份范围:相对于 今天的年份(“-nn:+ nn”),相对于当前选定的年份 (“c-nn:c + nn”),绝对(“nnnn:nnnn”)或这些的组合 格式(“nnnn:-nn”)。
答案 1 :(得分:0)
没有家伙没有。
在datepicker
函数调用之外进行所有变量计算。
此代码无法运行。
使用此
var year = (new Date()).getFullYear() - 10
和datepicker初始值设定项
yearRange: "1950:" + year,
那应该够了