我有一个链接的jQuery日期选择器,EndDate被约束为比StartDate更高(更接近)。日期为dd / mm / yy格式。我面临的问题是,一旦我点击StartDate(比如说3月5日为2017年3月5日),第二个选择器将从5月03日开始。有没有人遇到过这种行为?我应该删除EndDate中的格式规范吗? 在此处输出:和以下代码:
<script type="text/javascript">
$(".datepickerStart").datepicker({
constrainInput: true,
showAnim: "slideDown",
dateFormat: "dd/mm/yy",
changeMonth: true,
changeYear: true,
firstDay: 1,
numberOfMonths: 1,
onClose: function (selectedDate, obj) {
var index = obj.input.data("index");
$(".datepickerEnd[data-index="+index+"]").datepicker("option", "minDate", new Date(selectedDate));
if(index == 0){
$(".datepickerStart[data-index=1],.datepickerEnd[data-index=1]").datepicker("option", "maxDate", new Date(selectedDate))}}
});
var currentDate = new Date();
var currentYear = currentDate.getFullYear();
var pastYear = currentYear - 80;
var pastDate = new Date(pastYear+"/01/01");
$(".datepickerStart[data-index=1]").datepicker("option", "minDate", pastDate);
$(".datepickerStart[data-index=1]").datepicker( "setDate", pastDate);
$(".datepickerEnd").datepicker({
constrainInput: true,
changeMonth: true,
dateFormat: "dd/mm/yy",
changeYear: true,
firstDay: 1,
numberOfMonths: 1,
});
</script>
答案 0 :(得分:1)
问题的原因是new Date('01/02/03')
使用mm / dd / yyyy日期格式解析日期。
将所有new Date(something)
替换为$.datepicker.parseDate('dd/mm/yy', something)
。