JQuery中的生日选择器

时间:2014-12-11 09:28:32

标签: javascript jquery html5 date-of-birth

我在java脚本中为生日选择器编写此代码,但事实并非如此 在下拉列表中显示选项。如何显示它们。此代码的输出是3个下拉列表,其中没有选项。我想制作一个完整的生日选择器,准确的天数,以及闰年2月份的29天。我将非常感谢你们所有人。

<script type="text/javascript">
    $(function () {

        for (i = new Date().getFullYear() ; i > 1900; i--) {
            $('#years').append($('<option />').val(i).html(i));
        }

        for (i = 1; i < 13; i++) {
            $('#months').append($('<option />').val(i).html(i));
        }
        updateNumberOfDays();

        $('#years, #months').change(function () {

            updateNumberOfDays();

        });

    });

    function updateNumberOfDays() {
        $('#days').html('');
        month = $('#months').val();
        year = $('#years').val();
        days = daysInMonth(month, year);

        for (i = 1; i < days + 1 ; i++) {
            $('#days').append($('<option />').val(i).html(i));
        }

    }

    function daysInMonth(month, year) {
        return new Date(year, month, 0).getDate();
    }
</script>
<body>
<h1>
    Birthday
</h1>
<select id="days"></select>
<select id="months"></select>
<select id="years"></select>
</body>

1 个答案:

答案 0 :(得分:1)

您的代码运行正常。

我猜你的代码中没有包含jQuery文件。

您计算闰年中某个月的天数的代码也可以正常运行

 function updateNumberOfDays() {
        $('#days').html('');
        month = $('#months').val();
        year = $('#years').val();
        days = daysInMonth(month, year);

        for (i = 1; i < days + 1 ; i++) {
            $('#days').append($('<option />').val(i).html(i));
        }

    }

请参阅this fiddle。 :)