Jquery UI 日期选择器自定义错误
Jquery UI date picker Customization bug
代码参考:https://jsfiddle.net/manikiran1/9cmLuuk1/
我 selected 开始日期为 2013 年 1 月 1 日,然后应该使用开始日期预先填充结束日期,它将通过获取焦点自动显示下拉列表(如果结束日期为空)现在下拉列表将显示 2013 年 1 月的日历选项,这样我就可以 select 这个 selection.Now 中的任何日期,我的问题是
1.I select开始日期为 2013 年 1 月 1 日
2.the 结束日期将自动显示带有开始日期的日历下拉菜单 selection.
3. 现在我想 select 年为 2015 年,但第一次在日历下拉菜单中没有更改 selection.But 如果你再次 select 它工作正常。
所以请帮我避免这个错误。
$("#datepicker1").datepicker("option", "minDate", selectedDate);
var a = $("#datepicker1").datepicker("getDate");
var b = $("#datepicker").datepicker("getDate");
var c = new Date(a);
var d = new Date(b);
if (a == null) {
document.getElementById("datepicker1").focus();
$("#datepicker1").datepicker('setDate', selectedDate);
}
if (d.getTime() == c.getTime()) {
document.getElementById("datepicker1").focus();
$("#datepicker1").datepicker('setDate', selectedDate);
}
}
});
$("#datepicker1").datepicker({
maxDate: new Date(),
yearRange: "2011:new Date()",
changeMonth: true,
changeYear: true,
dateFormat: "M dd,yy",
onClose: function(selectedDate) {
var b = $("#datepicker").datepicker("getDate");
if (b == null) {
document.getElementById("datepicker").focus();
}
}
});
});
尝试添加这个
onChangeMonthYear:function(y, m, i){
var d = i.selectedDay;
$(this).datepicker('setDate', new Date(y, m - 1, d));
},
完整的功能将是
$("#datepicker1").datepicker({
maxDate: new Date(),
yearRange: "2011:new Date()",
changeMonth: true,
changeYear: true,
dateFormat: "M dd,yy",
onChangeMonthYear:function(y, m, i){
var d = i.selectedDay;
$(this).datepicker('setDate', new Date(y, m - 1, d));
},
onClose: function(selectedDate) {
var b = $("#datepicker").datepicker("getDate");
if (b == null) {
document.getElementById("datepicker").focus();
}
}
});
代码参考:https://jsfiddle.net/manikiran1/9cmLuuk1/
我 selected 开始日期为 2013 年 1 月 1 日,然后应该使用开始日期预先填充结束日期,它将通过获取焦点自动显示下拉列表(如果结束日期为空)现在下拉列表将显示 2013 年 1 月的日历选项,这样我就可以 select 这个 selection.Now 中的任何日期,我的问题是
1.I select开始日期为 2013 年 1 月 1 日
2.the 结束日期将自动显示带有开始日期的日历下拉菜单 selection.
3. 现在我想 select 年为 2015 年,但第一次在日历下拉菜单中没有更改 selection.But 如果你再次 select 它工作正常。
所以请帮我避免这个错误。
$("#datepicker1").datepicker("option", "minDate", selectedDate);
var a = $("#datepicker1").datepicker("getDate");
var b = $("#datepicker").datepicker("getDate");
var c = new Date(a);
var d = new Date(b);
if (a == null) {
document.getElementById("datepicker1").focus();
$("#datepicker1").datepicker('setDate', selectedDate);
}
if (d.getTime() == c.getTime()) {
document.getElementById("datepicker1").focus();
$("#datepicker1").datepicker('setDate', selectedDate);
}
}
});
$("#datepicker1").datepicker({
maxDate: new Date(),
yearRange: "2011:new Date()",
changeMonth: true,
changeYear: true,
dateFormat: "M dd,yy",
onClose: function(selectedDate) {
var b = $("#datepicker").datepicker("getDate");
if (b == null) {
document.getElementById("datepicker").focus();
}
}
});
});
尝试添加这个
onChangeMonthYear:function(y, m, i){
var d = i.selectedDay;
$(this).datepicker('setDate', new Date(y, m - 1, d));
},
完整的功能将是
$("#datepicker1").datepicker({
maxDate: new Date(),
yearRange: "2011:new Date()",
changeMonth: true,
changeYear: true,
dateFormat: "M dd,yy",
onChangeMonthYear:function(y, m, i){
var d = i.selectedDay;
$(this).datepicker('setDate', new Date(y, m - 1, d));
},
onClose: function(selectedDate) {
var b = $("#datepicker").datepicker("getDate");
if (b == null) {
document.getElementById("datepicker").focus();
}
}
});