java Html&JavaScript面试题:判断第二个日期比第一个日期大

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

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

完成方法:

首先要在Eclipse中配置apache的tomcat服务器,能够测试网页内容

再Eclipse中创建 dynamic web project项目

项目中创建一个html文件index.html

其中实现日期格式的判定,使用的是正则表达式 /^d{4}-(0?[1-9]|1[0-2])-(0?[1-9]|[1-2]d|3[0-1])$/

/ ... / 表示js中的字符串开始,相当于java中的 “”

^ 表示正则开始 以d{4}开始 表示以4个数字开头

- 表示其本身 -

(0?[1-9]|1[0-2])  0?表示有0个或1个0      [1-9]表示1到9中的某个数          | 表示或者 d表示一个数字    3[0-1]表示30或31 

index.html代码如下,当中包含js脚本 窗口载入即调入此脚本,点击submit即调用相应函数

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
    <script type="text/javascript">
        window.onload=function(){
            alert("窗口载入..");
            document.getElementById("form1").onsubmit=function(){//此处通过id找到网页元素,该网页元素提交即调用函数
                alert("点击提交即调用函数......");
                var d1=this.d1.value;                            //此处通过id和name都可以找到
                var d2=this.d2.value;
                if(!verifyDate(d1)){
                    alert("核实结果,第一个日期格式不对");
                    return false;
                }
                if(!verifyDate(d2)){
                    alert("核实结果,第二个日期格式不对");
                    return false;
                }
                if(compareDate(d1,d2)){
                    alert("第二个日期大于第一个");
                    return false;
                }else{
                    alert("第二个日期小于第一个");
                    return false;
                }
            };
        }
        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);
        }
        function compareDate(d1,d2){
            var arrayD1=d1.split("-");
            var arrayD2=d2.split("-");
            var date1=new Date(arrayD1[0],arrayD1[1],arrayD1[2]);
            var date2=new Date(arrayD2[0],arrayD2[1],arrayD2[2]);
            if(date2>date1){
                return true;
            }else{
                return false;
            }
        }
    </script>
</head>
<body>
    JavaScript
    <form action="index.html" id="form1">
        <input type="text" id="d1"> <input type="text" id="d2">
        <input type="submit">

    </form>
</body>
</html>
原文地址:https://www.cnblogs.com/qingyundian/p/8379630.html