首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

js应验出生日期

2012-11-25 
js验证出生日期这次做毕业设计遇到一个小小的问题,就是在添加员工信息时要填写出生年月,当然常规的做法是

js验证出生日期
这次做毕业设计遇到一个小小的问题,就是在添加员工信息时要填写出生年月,当然常规的做法是用下拉列表来做,年月日用三个下拉列表来做:



最开始的时候我想直接把给select添加option,比如月就直接添加12个option,日就直接添加31个option,不过后来发现不对劲,这样添加太麻烦啦,干嘛不用js来自动添加呢,其实这个也挺简单的嘛,o(︶︿︶)o 唉,看来还是没经验的表现啊,其实这样的东西应该第一感觉就是js嘛!赶紧做吧,其实这里用JS还可以让代码更健壮,不会出现BUG,因为如果像我开始那样做,会造成2月31这样不合常理的日期出现,而JS完全可以解决这些问题,废话少说代码贴出来啦!


var yearObj = null;var monthObj = null;var dayObj = null;function showBirthDay() {yearObj = document.tableForm.selectYear;monthObj = document.tableForm.selectMonth; dayObj = document.tableForm.selectDay;//清空年份下拉列表的数据yearObj.options.length = 0;monthObj.options.length = 0;dayObj.options.length = 0;for(var i = 1900; i < 2012; i++) {//$("<option value="+i+">"+i+"</option>").appendTo(yearObj);var year = new Option(i,i);yearObj.options.add(year);}for(var i = 1; i <= 12; i++) {var month = new Option(i,i);monthObj.options.add(month);}for(var i = 1; i <= 31; i++) {var day = new Option(i,i);dayObj.options.add(day);}}//当月份改变时,日期也会随着改变。function changeMonth() {yearObj = document.tableForm.selectYear;monthObj = document.tableForm.selectMonth; dayObj = document.tableForm.selectDay;dayObj.options.length = 0;var month = monthObj.value;var year = yearObj.value;//如果是4,6,9,11月,就有30天if(month == 4 || month == 6 || month == 9 || month == 11){for(var i = 1; i <= 30; i++) {var day = new Option(i,i);dayObj.options.add(day);}}//如果是2月,则else if(month == 2) {if((year%4==0 && year%100!=0) || year%400==0) {for(var i = 1; i <= 29; i++) {var day = new Option(i,i);dayObj.options.add(day);}}else {for(var i = 1; i <= 28; i++) {var day = new Option(i,i);dayObj.options.add(day);}}}//其他月份都是31天else {for(var i = 1; i <= 31; i++) {var day = new Option(i,i);dayObj.options.add(day);}}}

热点排行