`
307622798
  • 浏览: 10637 次
社区版块
存档分类
最新评论

js验证出生日期

阅读更多
这次做毕业设计遇到一个小小的问题,就是在添加员工信息时要填写出生年月,当然常规的做法是用下拉列表来做,年月日用三个下拉列表来做:
<td height="40" align="right">出生年月:</td>
    <td><select name="selectYear" id="selectYear" onChange="changeMonth()">
	      
    </select>
    年
    <select name="selectMonth" id="selectMonth" onChange="changeMonth()">
     
    </select>
    月
    <select name="selectDay" id="selectDay">
     
    </select>
    日</td>


最开始的时候我想直接把给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);
			}
		}
	}
分享到:
评论

相关推荐

    身份证号,出生日期等的js正则表达式验证

    关于身份证号,出生日期等的js正则表达式验证 有几种方式

    JS身份证验证性别和出生日期

    JS身份证验证性别和出生日期,希望可以给大家一点帮助!

    比较全的js验证,包括(身份证,手机,固话,身份证号与性别、出生日期验证等等)

    自己写的比较全js验证,供大家参考 //身份证验证 function checkIdcard(idcard1,showMsg){ var idcard=this.trim(idcard1);// 对身份证号码做处理。去除头尾空格。 var Errors=new Array( "验证通过!", ...

    最全身份证号码验证JS

    最全身份证号码验证JS包含以下内方面内容: 1、验证身份证的长度及格式 ...3、验证身份证上的出生日期是否正确 4、验证身份证号最后一位是否正确 5、根据身份证号验证性别 以上内容希望对有需要的人员提供帮助!

    javaScript 验证身份证号是否正确,并能获取户口所在地。

    javaScript实现验证身份证是否正确,并能获取户口所在地。 调用方式: 引入idCard.js var msg = idCard.checkIdCard(身份证号); msg为 "正确" 时验证正确,否则返回错误信息 ... idCard.getBirthDate 获取出生日期

    常用的js验证

    常用的js验证 :包括身份证校验、根据身份证获取出生日期、性别,车牌号校验,等等

    Node.js通过身份证号验证年龄、出生日期与性别方法示例

    最近工作中需要对身份证号的年龄、出生日期与性别进行验证,所以这篇文章主要介绍了Node.js通过身份证号验证年龄、出生日期与性别的方法,在介绍完node.js的实现方法后又给大家分类的利用JS实现的方法,需要的朋友...

    JS判断日期格式是否合法的简单实例

    下面小编就为大家带来一篇JS判断日期格式是否合法的简单实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    身份证验证js

    // 验证15位和18位的身份证,并且包含生日和校验位的验证。 function isIdCardNo(num) { if (num=='') return false; num = num.toUpperCase(); // 身份证号码为15位或者18位,15位时全为数字,18位前17位为数字...

    JavaScript检查是否是正确的日期格式的代码

    JavaScript 检查是否是正确的日期格式,不但判断格式,而且还可判断天数是否超出。

    一个非常强大完整的web表单验证程序

    &lt;br&gt; Validator是基于JavaScript技术的伪静态类和对象的自定义属性,可以对网页中的表单项输入进行相应的验证,允许同一页面中同时验证多个表单,熟悉接口之后也可以对特定的表单项甚至仅仅是某个字符串进行...

    js脚本大全 js验证大全 压缩包

    1.3 将日期格式由yyyy-MM-dd,转换为yyyymmdd,以直接比较两个日 期的大小.. 4 1.4 判断字符串是否全部由数字组成. 5 1.5 判断字符串是否全部由字母组成. 6 1.6 对于月和日,如果前面有零,去除,如 01 变为 1 .. 6 ...

    javascript验证身份证号

    我们在做互联网网站时,注册个人资料时,经常要用到身份证号,我们需要对身份证进验证,不然别人随便输个号码就通过,... 表示编码对象出生的年、月、日,按GB/T7408的规定执行,年、月、日代码之间不用分隔符。  4

    简单的表单验证.zip

    简单的表单验证: 1. 对email只验证了@.必须出现且顺序要对,不能为空 2. 对于输入放入密码:第一个需要为字母,必须含有数字,长度有... 3.... 4.... 5. 性别默认男,无验证 6. 出生日期不为空 7. 信息全部正确才能注册

    JS验证身份证有效性示例

    ”, “身份证号码出生日期超出范围或含有非法字符!”, “身份证号码校验错误!”, “身份证地区非法!” ); var area={11:”北京”,12:”天津”,13:”河北”,14:”山西”,15:”内蒙古”,21:”辽宁”,22:”吉林”,23:”...

    js实现二代身份证号码验证详解

    本文给大家分享一段超级全面的二代身份证号码验证程序,由JS编写而成,可以校验身份证的地址码、出生日期码、顺序码和数字校验码。是身份证去伪存真的一大利器。

    JS实现的验证身份证及获取地区功能示例

    本文实例讲述了JS实现的验证身份证及获取地区功能。分享给大家供大家参考,具体如下: 这里的代码可以用来验证身份证号,并且根据身份证号来判断是哪个省份及性别 代码示例: &lt;head &gt; &lt;title&gt;&lt;/...

    C# 最全的日期正则表达式,没有之一

    分支的多少,每个分支的复杂程度都会影响匹配效率,考虑到被验证日期概率分布,绝大多数都是落到1-28日内,所以采用第二种分类方法,会有效提高匹配效率。 3.2 正则实现 采用3.1.2节的分类方法,就可以针对每一个...

    JS身份证信息验证正则表达式

    很多时候我们都是通过一组正则表达式来判断用户输入的身份证是否合法,那在用正则表达式判断之前,首先要做到的是对... 表示编码对象出生的年、月、日,按gb/T7408的规定执行,年、月、日代码之间不用分隔符。  4、

Global site tag (gtag.js) - Google Analytics