我有2个日期选择器,第二个日期选择器的minDate是第一个日期选择器的日期。 问题是,如果我想将dateFormat变量中的值从“ mm / dd / yy”更改为“ dd-mm-yy”,则第二个日期选择器将丢失minDate。 我希望两个日期选择器中的日期格式均为“ dd-mm-yy”。
$(function() {
var dateFormat = 'mm/dd/yy',
from = $("#from")
.datepicker({
minDate: 0,
numberOfMonths: 2
})
.on("change", function() {
to.datepicker("option", "minDate", getDate(this));
}),
to = $("#to").datepicker({
dateFormat: 'dd-mm-yy',
numberOfMonths: 2
})
function getDate(element) {
var date;
try {
date = $.datepicker.parseDate(dateFormat, element.value);
} catch (error) {
date = null;
}
return date;
}
});
<link href="https://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css" rel="stylesheet" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<input id="from" />
<input id="to" />
答案 0 :(得分:1)
在您提供的代码中,您并没有在各处使用相同的日期格式。
$(function() {
var dateFormat = 'dd-mm-yy',
from = $("#from")
.datepicker({
minDate: 0,
numberOfMonths: 2,
dateFormat: dateFormat,
})
.on("change", function() {
to.datepicker("option", "minDate", getDate(this));
}),
to = $("#to").datepicker({
dateFormat: dateFormat,
numberOfMonths: 2
})
function getDate(element) {
var date;
try {
date = $.datepicker.parseDate(dateFormat, element.value);
} catch (error) {
date = null;
}
return date;
}
});
在这里,我将变量dateFormat提供给修复它的日期选择器。