JS中利用正則表達式對輸入框內容進行格式校驗

JS輸入框格式校驗


舉例如下:

/*
	條件一:限制輸入框內的格式必須爲 "PK_NODE00000"(前綴PK_NODE固定,後邊爲五個數字)
	條件二:輸入日期不能大於當前年月
*/
			var PK_NODE="PK_NODE00011";
			var REGULAR_TIME="202010";
 
			var reg = new RegExp("^[0-9]*$");
            var defa=PK_NODE.slice(0,7);
            var num=PK_NODE.slice(7);
            var len=PK_NODE.length;
			var timeM=REGULAR_TIME.slice(4);
			var timeY=REGULAR_TIME.slice(0,4);
			var Nzero=REGULAR_TIME.slice(4,6);
            var tm=new Date();
            var Y=tm.getFullYear()+'';//這裏的''必須加,將年轉爲字符串,不然後邊 var def=Y+M;會出現bug,
            var M=tm.getMonth()+1;
 			if(M<10){ M='0'+M;}  var fmtDate=Y+M;
			
 			if(defa!='PK_NODE'||!reg.test(num)||len!=12){
                alert('輸入格式不合法!', 'warning');
                return;
            }

			if(timeM>12||timeY<1970||Nzero==00){
                alert('輸入日期不合法,格式如:\'202001\'', 'warning');
                return;
            }//這裏判斷是防止輸入月份大於12月以及防止輸入‘201900’這類其他情況,例如:‘201913’,‘202000’,都將提示格式不合法。

			if(REGULAR_TIME>fmtDate){
                alert('輸入日期超出查詢範圍!', 'warning');
                return;
            }
如有不足之處,還請大佬們能夠指出!
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章