jquery 日期选择的方案

        <select id="year">
            <option value=""></option>
        </select>
        <select id="month">
            <option value=""></option>
        </select>
        <select id="day">
            <option value=""></option>
        </select>
        <script>
            var my_year;
            var my_month;
            var my_day;
//            var my_year = 2013;
//            var my_month = 5;
//            var my_day = 31;
            var myDate = new Date();
            year = myDate.getFullYear();
            var year_ctrl = $("#year");
            for (var i = year; i >= 1900; i--) {
                if (my_year === i) {
                    var option = $("<option selected='selected'>").text(i).val(i);
                } else {
                    var option = $("<option>").text(i).val(i);
                }
                year_ctrl.append(option);
            }
            var month_ctrl = $("#month");
            for (var i = 1; i <= 12; i++) {
                if (my_month === i) {
                    var option = $("<option selected='selected'>").text(i).val(i);
                } else {
                    var option = $("<option>").text(i).val(i);
                }
                month_ctrl.append(option);
            }
            makeDays();
            $("#year").bind("change", function() {
                makeDays();
            });
            $("#month").bind("change", function() {
                makeDays();
            });
            function makeDays() {
                var month_ctrl = $("#month");
                var month = month_ctrl.val();
                var year = $("#year").val();
                var day = $("#day");
                day.empty();
                day.append(new Option("", ""));
                if (!year) {
                    month_ctrl.val("");
                }
                if (month && year) {
                    days = getDays(year, month);
                    for (var i = 1; i <= days; ++i) {
                        if (my_day === i) {
                            var option = $("<option selected='selected'>").text(i).val(i);
                        } else {
                            var option = $("<option>").text(i).val(i);
                        }
                        day.append(option);
                    }
                }
            }
            function getDays(year, month)
            {
                var date = new Date(year, month, 0);
                return date.getDate();
            }
        </script>

 

posted @ 2013-04-26 00:00  firesnow  阅读(249)  评论(0编辑  收藏  举报