基于JavaScript实现年月日三级联动


Posted in Javascript onJune 22, 2021

本文实例为大家分享了JavaScript实现年月日三级联动的具体代码,供大家参考,具体内容如下

基于JavaScript实现年月日三级联动

代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>年月日三级联动</title>
</head>
<body onload="initYear(),initMonth()">
<select id="year"></select>年
<select id="month" onchange="initDate()"></select>月
<select id="date"></select>日
<script>
    /**
     * 初始化年
     */
    function initYear() {
        //获得当前年份
        let curYear = new Date().getFullYear();
        //获得年列表对象
        let yearObj = document.getElementById("year");
        yearObj.options.add(new Option("---请选择年---", ""));
        for (let year = curYear; year > curYear - 100; year--) {
            let option = new Option(year, year);
            yearObj.options.add(option);
        }
    }

    /**
     * 初始化月份
     */
    function initMonth() {
        //获得年列表对象
        let monthObj = document.getElementById("month");
        monthObj.options.add(new Option("---请选择月份---", ""));
        for (let month = 1; month <= 12; month++) {
            let option = new Option(month, month);
            monthObj.options.add(option);
        }
    }

    /**
     * 初始化日
     */
    function initDate() {
        let dateObj = document.getElementById("date");
        //获得当月选中月份
        let month = document.getElementById("month").value;
        //当月份选择完毕,再弹出对应日期
        dateObj.options.add(new Option("---请选择日期---", ""));
        //将month转化成数字
        month = parseInt(month);
        //定义每月的天数
        let days = 31;
        switch (month) {
            case 1:
            case 3:
            case 5:
            case 7:
            case 8:
            case 10:
            case 12:
                break;
            case 4:
            case 6:
            case 9:
            case 11:
                days = 30;
                break;
            case 2:
                //需要判断是否为闰年,获得当前选中的年
                let year = document.getElementById("year").value;
                if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
                    days = 29;
                } else {
                    days = 28;
                }
                break;
        }
        //将得到的天数,循环输出
        for (let i = 1; i <= days; i++) {
            let option = new Option(i, i);
            dateObj.options.add(option);
        }
    }
</script>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript之通用简单的table选项卡实现(二)
May 09 Javascript
css样式标签和js语法属性区别
Nov 06 Javascript
Java/JS获取flash高宽的具体方法
Dec 27 Javascript
基于JQuery实现的图片自动进行缩放和裁剪处理
Jan 31 Javascript
基于javascript bootstrap实现生日日期联动选择
Apr 07 Javascript
总结Node.js中的一些错误类型
Aug 15 Javascript
bootstrap配合Masonry插件实现瀑布式布局
Jan 18 Javascript
AngularJS 使用ng-repeat报错 [ngRepeat:dupes]
Jan 19 Javascript
Extjs 中的 Treepanel 实现菜单级联选中效果及实例代码
Aug 22 Javascript
解决使用vue.js路由后失效的问题
Mar 17 Javascript
Vue.js路由实现选项卡简单实例
Jul 24 Javascript
VUE页面中通过双击实现复制表格中内容的示例代码
Jun 11 Javascript
Vue vee-validate插件的简单使用
Jun 22 #Vue.js
基于JavaScript实现省市联动效果
JavaScript实现简单计时器
React实现动效弹窗组件
关于React Native 无法链接模拟器的问题
React-vscode使用jsx语法的问题及解决方法
vue3使用vue-router的完整步骤记录
You might like
php下实现农历日历的代码
2007/03/07 PHP
通过php删除xml文档内容的方法
2015/01/23 PHP
php获取excel文件数据
2017/04/21 PHP
PHP+swoole+linux实现系统监控和性能优化操作示例
2019/04/15 PHP
Firefox getBoxObjectFor getBoundingClientRect联系
2008/10/26 Javascript
情人节之礼 js项链效果
2012/02/13 Javascript
根据身份证号自动输出相关信息(籍贯,出身日期,性别)
2013/11/15 Javascript
不使用jquery实现js打字效果示例分享
2014/01/19 Javascript
一个JavaScript的求爱小特效
2014/05/09 Javascript
JS、CSS以及img对DOMContentLoaded事件的影响
2014/08/12 Javascript
jQuery中Form相关知识汇总
2015/01/06 Javascript
JS中prototype的用法实例分析
2015/03/19 Javascript
js表格排序实例分析(支持int,float,date,string四种数据类型)
2015/05/06 Javascript
Bootstrap打造一个左侧折叠菜单的系统模板(一)
2016/05/17 Javascript
归纳下js面向对象的几种常见写法总结
2016/08/24 Javascript
jquery mobile移动端幻灯片滑动切换效果
2020/04/15 Javascript
解决URL地址中的中文乱码问题的办法
2017/02/10 Javascript
详谈js模块化规范
2017/07/07 Javascript
vue微信分享 vue实现当前页面分享其他页面
2017/12/02 Javascript
快速解决angularJS中用post方法时后台拿不到值的问题
2018/08/14 Javascript
javascript操作元素的常见方法小结
2019/11/13 Javascript
three.js 将图片马赛克化的示例代码
2020/07/31 Javascript
使用webpack5从0到1搭建一个react项目的实现步骤
2020/12/16 Javascript
[06:13]DOTA2进化论(修改版)
2013/10/08 DOTA
Python map和reduce函数用法示例
2015/02/26 Python
flask/django 动态查询表结构相同表名不同数据的Model实现方法
2019/08/29 Python
Django实现将views.py中的数据传递到前端html页面,并展示
2020/03/16 Python
用python打开摄像头并把图像传回qq邮箱(Pyinstaller打包)
2020/05/17 Python
有关HTML5 Video对象的ontimeupdate事件(Chrome上无效)的问题
2013/07/19 HTML / CSS
猫途鹰:全球领先的旅游点评社区
2017/04/07 全球购物
教师暑期培训感言
2014/08/15 职场文书
2014年小学教师工作总结
2014/11/10 职场文书
闪闪红星观后感
2015/06/08 职场文书
安全教育观后感
2015/06/17 职场文书
婚育证明格式
2015/06/17 职场文书
元素水平垂直居中的方式
2021/03/31 HTML / CSS