我在同一页面中有两个日期选择器,我想根据第一个日期选择器更改第二个日期选择器的 minDate 。这是我的代码:
$("#datepickerDepart" ).datepicker({
dateFormat: "mm-dd-yy",
minDate: 0,
onSelect: function(dateText, inst) {
var m = dateText.substring(0,2);
var d = dateText.substring(3,5);
var y = dateText.substring(6,10);
console.log(d);
console.log(m);
console.log(y);
var newDate = new Date(y,m-1,d);
console.log(newDate);
$('#datepickerReturn').val("");
$('#datepickerReturn').datepicker({
dateFormat: "mm-dd-yy",
minDate: newDate
})
}
});
但是我有一个问题,第一次在第一个datePicker中选择日期时,第二个datePicker的minDate将根据此设置,但是当我重新选择第一个时,第二个datePicker的minDate将不再改变,它将保留。我不知道为什么。请帮忙!!
我只是希望只要第一个日期的选定日期发生变化,第二个日期的 minDate 就会发生变化。
最佳答案
您错误地更新了第二个日期选择器
。我假设您之前已经初始化了第二个,尽管您发布的代码似乎没有初始化。更新时需要使用选项语法,而不是构造函数。
http://jqueryui.com/demos/datepicker/#option-minDate
$('#datepickerReturn').val("");
$('#datepickerReturn').datepicker({'option','minDate', newDate});
完整代码:
$('#datepickerReturn').datepicker({
dateFormat: "mm-dd-yy",
minDate: 0
});
$("#datepickerDepart" ).datepicker({
dateFormat: "mm-dd-yy",
minDate: 0,
onSelect: function(dateText, inst) {
var m = dateText.substring(0,2);
var d = dateText.substring(3,5);
var y = dateText.substring(6,10);
console.log(d);
console.log(m);
console.log(y);
var newDate = new Date(y,m-1,d);
console.log(newDate);
$('#datepickerReturn').val("");
$('#datepickerReturn').datepicker({'option','minDate', newDate});
}
});
关于jquery-ui - 根据第一个日期选择器更改第二个日期选择器的 minDate,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12632738/