判断第二个日期比第一个日期大

如何用脚本判断用户输入的的字符串是下面的时间格式2004-11-21 必须要保证用户的输入是此格式,并且是时间,比如说月份不大于12等等,另外我需要用户输入两个,并且后一个要比前一个晚,只允许用JAVASCRIPT,请详细帮助作答,, 

//这里可用正则表达式判断提前判断一下格式,然后按下提取各时间字段内容

<script type="text/javascript">
	window.onload = function() {
		//这么写是为了实现js代码与html代码的分离,当我修改js时,不能影响html代码。
		document.getElementById("frm1").onsubmit = function() {
			var d1 = this.d1.value;
			var d2 = this.d2.value;
			if (!verifyDate(d1)) {
				alert("第一个日期格式不对");
				return false;
			}
			if (!verifyDate(d2)) {
				alert("第二个日期格式不对");
				return false;
			}
			if (!compareDate(d1, d2)) {
				alert("第二个日期比第一日期小");
				return false;
			}
		};
	}
	function compareDate(d1, d2) {
		var arrayD1 = d1.split("-");
		var date1 = new Date(arrayD1[0], arrayD1[1], arrayD1[2]);
		var arrayD2 = d2.split("-");
		var date2 = new Date(arrayD2[0], arrayD2[1], arrayD2[2]);
		if (date1 > date2)
			return false;
		return true;
	}
	function verifyDate(d) {
		var datePattern = /^\d{4}-(0?[1-9]|1[0-2])-(0?[1-9]|[1-2]\d|3[0-1])$/;
		return datePattern.test(d);
	}
</script>

<form id="frm1" action="xxx.html">
	<input type="text" name="d1" />
	<input type="text" name="d2" />
	<input type="submit" />
</form>	

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值