我在这里有一个Jquery日期选择器的代码
// Datepicker from jQuery UI plugin
$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'
});
});
我的一年下降从1950年开始,一直持续到2006年,我想扭转它们。
我尝试yearRange: '2006:1950'
但没有显示任何内容:(
有没有解决这个问题?
答案 0 :(得分:1)
提供的链接是一个很好的解决方案。这是另一种方式,是一种黑客,但有效: http://plnkr.co/edit/sSdUbqd1pWKyiBOZAMwD?p=preview
$(document).ready(function() {
var showPicker = false;
$("#txtBirthday").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',
onClose: function(dateText, inst) {
showPicker = false;
}
});
$(".ui-datepicker").on("mouseenter", function() {
if (!showPicker) {
showPicker = true;
//Reverse the years
var dropYear = $("select.ui-datepicker-year");
dropYear.find('option').each(function() {
dropYear.prepend(this);
});
}
});
});
答案 1 :(得分:-1)
希望这一刻,我找到了一个更好的解决方案并且遇到了你的帖子。如果这仍然相关:
jQuery datepicker year dropdown starts from 1900 and I want it to start from the bottom
这就是我解决问题的方法。我认为这就是jQuery的原因 没有修复这个“Bug”,因为有一种“方式”来获得这一年 从最后一次开始:
dateFormat: 'mm/dd/yy', changeMonth: true, changeYear: true, yearRange: "-70:", maxDate: "-13Y"
与我在此处发布的原始代码相比,如果使用的话
yearRange
作为固定年份yearRange: "1900:-13"
,最好使用 这是自下而上:"-70:"
。并设置maxDate
。所以现在我得到了我的 年份选择框从2004年开始而不是1900年。希望这有助于其他人。
P.S:所有其他解决方案都经过测试。他们很慢,而且 有些人不能很好地工作(特别是旧的 - 设定当年 而不是2004年。)