任何时间日期选择器中的日期范围错误



我已经设法拼凑了一些代码的数据范围选择器在AnyTime:

$(document).ready(function() {
    $("#date_start").AnyTime_noPicker().removeAttr("disabled").AnyTime_picker({format:"%Y-%m-%d",earliest:new Date(2000,0,1,0,0,0)});
    $("#date_end").AnyTime_noPicker().removeAttr("disabled").AnyTime_picker({format:"%Y-%m-%d",earliest:new Date(2000,0,1,0,0,0)});
    var rangeFormat = "%Y-%m-%d";
    var rangeConv = new AnyTime.Converter({format:rangeFormat});
    var oneDay = 60*1*1000;
    $("#date_start").change( function() {
        var fromDay = rangeConv.parse($("#date_start").val()).getTime();
        var ToDay = rangeConv.parse($("#date_end").val()).getTime();
        if (fromDay > ToDay) {
            var ninetyDaysLater = new Date(fromDay + oneDay);
            $("#date_end").AnyTime_noPicker().removeAttr("disabled").val(rangeConv.format(ninetyDaysLater)).AnyTime_picker({
                earliest: ninetyDaysLater,
                format: rangeFormat
            });
        }
    });
    $("#date_end").change( function() {
        var fromDay = rangeConv.parse($("#date_end").val()).getTime();
        var ToDay = rangeConv.parse($("#date_start").val()).getTime();
        if (fromDay < ToDay) {
            var ninetyDaysLater = new Date(fromDay - oneDay);
            $("#date_start").AnyTime_noPicker().removeAttr("disabled").val(rangeConv.format(ninetyDaysLater)).AnyTime_picker({
                earliest: ninetyDaysLater,
                format: rangeFormat
            });
        }
    });
});

…包含以下HTML元素:

<label for="date_start">Start Date of Event</label>
<input type="text" name="date_start" value="" id="date_start" />
<label for="date_end">End Date of Event</label>
<input type="text" name="date_end" value="" id="date_end" />

但是,它给我错误,我不知道为什么。

在其他网站和我能找到的几个教程中倾注了类似的代码,我看不出代码有什么问题。

当我点击第一个日期字段时,我得到了一系列错误:

不是"%Y-%m-%d"格式

…在AnyTime本身(AnyTime .5.0.1-1403131246.js)的代码中,第971行出现了两次,然后在同一文件中的同一行又出现了三个。当我点击第二个字段时,我得到同样的错误。但在此之后,代码开始工作。

因为我无法在我的代码中隔离源代码,我只是不知道从哪里开始(我在学习模式绿色的jQuery)

最后,解决方案非常简单;我必须预先用值填充字段。

在本例中:

"date_start" = date("Y-m-d")

"date_end"=日期("Y-m-d strtotime(+ 1天))

简单。

最新更新