Javascript日期选择器在html中的使用

Javascript日期选择器在html中的使用,javascript,jquery,Javascript,Jquery,有人能纠正我的日期选取器代码吗,我想在中只显示2013年到2014年的日期,我试过这样做,这有时有效,但有时也会显示2004年和2024年,请帮助我纠正和简化代码,我想创建php函数来显示日期范围,我想在其中输入最小值和最大值,就像这样datepick('2013-01-01'、'2014-01-01') 这是我的代码,带有bug HTML 在FIDLEfrom范围内正确显示,但在其浏览器中也显示2024。在onClose功能中,在使用selectedDate之前检查是否选择了日期: $(f

有人能纠正我的日期选取器代码吗,我想在中只显示2013年到2014年的日期,我试过这样做,这有时有效,但有时也会显示2004年和2024年,请帮助我纠正和简化代码,我想创建php函数来显示日期范围,我想在其中输入最小值和最大值,就像这样
datepick('2013-01-01'、'2014-01-01')

这是我的代码,带有bug

HTML



在FIDLE
from
范围内正确显示,但在其浏览器中也显示2024。

onClose
功能中,在使用
selectedDate
之前检查是否选择了日期:

$(function () {
    $("#from").datepicker({
        dateFormat: 'dd-mm-yy',
        changeMonth: true,
        changeYear: true,
        numberOfMonths: 1,
        maxDate: new Date('2014-12-31'),
        minDate: new Date('2013-01-01'),
        onClose: function (selectedDate) {
            if (selectedDate) {
                $("#to").datepicker("option", "minDate", selectedDate);
            }
        }
    });

    $("#to").datepicker({
        dateFormat: 'dd-mm-yy',
        changeMonth: true,
        changeYear: true,
        numberOfMonths: 1,
        maxDate: new Date('2014-12-31'),
        minDate: +0,
        onClose: function (selectedDate) {
            if (selectedDate) {
                $("#from").datepicker("option", "maxDate", selectedDate);
            }
        }
    });
});

另一个选项是使用
onSelect
而不是
onClose
,这仅在用户选择日期时触发


minDate:新日期(2013年1-1月1日),
maxDate:新日期(2014年1-1月1日),
minDate:+0
?@MonkeyZeus:没有必要。“2013-01-01”对于这些目的是有效的。顺便说一句,你的JSFIDLE对我来说很好。你的浏览器有问题吗?对我来说很好。伙计们,请复制我的代码并在你的浏览器中运行并刷新,它显示的日期与我提到的范围不同,我真的不知道ut web编程/设计,我正在学习…+1接受..谢谢,它可以工作,但我如何创建php函数,我想将其嵌入html页面我有许多php函数/api返回的分区。使用类而不是ID。在回调函数中,
$(此)
是datepicker元素,您可以使用DOM遍历函数来查找相应的from或to元素。我没有理解您,请解释一下什么是
$(此)
?这是jQuery中访问事件目标的标准方式。默认情况下,“年份”菜单只能追溯到当前所选年份的10年前。您可以使用更早的minDate,但您可能需要使用多个菜单选项才能到达目标(先选择2004,然后再次查看,您将看到它)。请参阅。您可以使用
yearRange
选项来增加此值。
$(function () {
    $("#from").datepicker({
        dateFormat: 'dd-mm-yy',
        changeMonth: true,
        changeYear: true,
        numberOfMonths: 1,
        maxDate: new Date('2014-12-31'),
        minDate: new Date('2013-01-01'),
        onClose: function (selectedDate) {
            $("#to").datepicker("option", "minDate", selectedDate);
        }
    });

    $("#to").datepicker({
        dateFormat: 'dd-mm-yy',
        changeMonth: true,
        changeYear: true,
        numberOfMonths: 1,
        maxDate: new Date('2014-12-31'),
        minDate: +0,
        onClose: function (selectedDate) {
            $("#from").datepicker("option", "maxDate", selectedDate);
        }
    });
});
$(function () {
    $("#from").datepicker({
        dateFormat: 'dd-mm-yy',
        changeMonth: true,
        changeYear: true,
        numberOfMonths: 1,
        maxDate: new Date('2014-12-31'),
        minDate: new Date('2013-01-01'),
        onClose: function (selectedDate) {
            if (selectedDate) {
                $("#to").datepicker("option", "minDate", selectedDate);
            }
        }
    });

    $("#to").datepicker({
        dateFormat: 'dd-mm-yy',
        changeMonth: true,
        changeYear: true,
        numberOfMonths: 1,
        maxDate: new Date('2014-12-31'),
        minDate: +0,
        onClose: function (selectedDate) {
            if (selectedDate) {
                $("#from").datepicker("option", "maxDate", selectedDate);
            }
        }
    });
});