JS正則-驗證時間格式

來源:互聯網
上載者:User

 利用JS正則-驗證日期時間格式是否正確

 1.建立一個文字框,時間為頁面載入時自動擷取的系統時間

 <input id="date" name="createTime" type="text" value="" size="15"  onblur="mycheck()" />

2.正則驗證函式

function mycheck(){
         var str=$("#date").val();
         var reg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/;        ---建立正則驗證運算式
         var r = str.match(reg);                                                                                            ---使用Regex對字串尋找,並將包含尋找的結果作為數組返回
         if(r==null){alert("對不起,您輸入的日期格式不正確!");Stime.starttime.focus();return;}    

         if(r[3]<1||r[3]>12){alert("月份必須介於1和12之間,請您重新輸入!");$("#date").focus();return;}      ---對月份進行判定

         //對日期進行判定
         if(r[3]==2&&r[1]%4==0)               ---閏年二月的日期的判定
         {
             if(r[4]<0||r[4]>29){alert(r[1]+"年2月的日期必須介於1和29之間,請您重新輸入!");$("#date").focus();return;}
         }
         if(r[3]==2&&r[1]%4!=0)               ---平年二月的日期的判定
         {
             if(r[4]<0||r[4]>28){alert(r[1]+"年2月的日期必須介於1和28之間,請您重新輸入!");$("#date").focus();return;}
         }
         if(r[3]<8&&r[3]%2==0)                --- 4,6月日期的判定
         {
             if(r[4]<0||r[4]>30){alert(r[3]+"月的日期必須介於1和30之間,請您重新輸入!");$("#date").focus();return;}
         }
         if(r[3]<8&&r[3]%2!=0)                ----1、3、5、7月日期的判定
         {
             if(r[4]<0||r[4]>31){alert(r[3]+"月的日期必須介於1和31之間,請您重新輸入!");$("#date").focus();return;}
         }
         if(r[3]>=8&&r[3]%2==0)            ----8、10、12月日期的判定
         {
             if(r[4]<0||r[4]>31){alert(r[3]+"月的日期必須介於1和31之間,請您重新輸入!");$("#date").focus();return;}
         }
         if(r[3]>=8&&r[3]%2!=0              ----9、11月日期的判定
         {
             if(r[4]<0||r[4]>30){alert(r[3]+"月的日期必須介於1和30之間,請您重新輸入!");$("#date").focus();return;}
         }

         //時間的判斷
         
         if(r[5]<0||r[5]>23){alert("小時數必須介於0和23之間,請您重新輸入!");$("#date").focus();return;}      ---對小時進行判斷
         if(r[6]<0||r[6]>59){alert("分鐘數必須介於0和59之間,請您重新輸入!");$("#date").focus();return;}      ---對分鐘進行判斷
         if(r[7]<0||r[7]>59){alert("秒數必須介於0和59之間,請您重新輸入!");$("#date").focus();return;}          ---對秒進行判斷  

       }

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.