判斷第二個日期比第一個日期大

 

ONE    

  如何用腳本判斷用戶輸入的的字符串是下面的時間格式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>

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章