jQueryUI链接的datepicker(开始日期):Enddate读取dd / mm / yy格式为mm / dd / yy

时间:2018-01-22 15:13:12

标签: jquery jquery-ui datepicker

我有一个链接的jQuery日期选择器,EndDate被约束为比StartDate更高(更接近)。日期为dd / mm / yy格式。我面临的问题是,一旦我点击StartDate(比如说3月5日为2017年3月5日),第二个选择器将从5月03日开始。有没有人遇到过这种行为?我应该删除EndDate中的格式规范吗? 在此处输出:EndDate is messed和以下代码:

<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>

1 个答案:

答案 0 :(得分:1)

问题的原因是new Date('01/02/03')使用mm / dd / yyyy日期格式解析日期。

将所有new Date(something)替换为$.datepicker.parseDate('dd/mm/yy', something)