//-----------------------------年 月 日--------------------------------------------------- var by = fm.birthYear, bm = fm.birthMonth, bd = fm.birthDay; //当用户先选了月的时候 要根据年来改变日 by.onchange =function () { var y = +this.value,m=bm.value; if(m!=2){ return; } if(isoverYear(y) && bd.options.length!=30){ bd.options.length=29; bd.add(new Option(29,29),null); }else if(bd.options.length!=29){ bd.options.length=29; } }; //显示年 你想显示多少就更改1980和2000就可以了 其实你要实现其他的就更改这里就可以了 其它都做好了 for(var i = 1980;i<=2000;i++){ by.add(new Option(i,i),null); } //月 根据月 平年闰年 来做日 for(var i=1;i<13;i++){ bm.add(new Option(i,i),null); } var m30 = {4:1,6:1,9:1,11:1}; bm.onchange=function () { var m= this.value; bd.options.length=1; if(m==2){ var y=+by.value,d; if(!y || isoverYear(y)){ d = 29; }else d = 28; for(i = 1;i<=d;i++){ bd.add(new Option(i,i),null); } }else if(m in m30){ for(i = 1;i<31;i++){ bd.add(new Option(i,i),null); } } else{ for(i = 1;i<=31;i++){ bd.add(new Option(i,i),null); } } } //判断是不是闰年 闰年 能被4整除 不能被100整除 29天 function isoverYear(y) { return (y%4 ==0 && y%100 !==0) || y%400==0; }
年 月 日
最新推荐文章于 2022-11-12 16:07:35 发布
本文介绍了一个简单的日期选择器实现方案,包括年、月、日的选择,并考虑了平年和闰年的不同情况。通过JavaScript代码动态调整选项,确保用户输入的有效性和准确性。
2248

被折叠的 条评论
为什么被折叠?



