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;
}
如有不足之處,還請大佬們能夠指出!