你的位置: Kiyo'Space首页 JavaScript/Jscript 阅读文章 欢迎留下您的足迹

JS判断输入日期的正确性

[ JavaScript/Jscript ] 分享

JS判断输入日期的正确性
<script language=javascript>
function strDateTime(str){
var reg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/; 
var r = str.match(reg); 
if(r==null)return false; 
var d= new Date(r[1], r[3]-1,r[4]); 
var newStr=d.getFullYear()+r[2]+(d.getMonth()+1)+r[2]+d.getDate()
return newStr==str
}
alert(strDateTime("2002-1-31"))
alert(strDateTime("2002-1-41"))
</script> 

 

如果alert(strDateTime("2002-01-31"))
則判斷為非法
所以我是這樣寫的
function isDate(str){
 if (str.length==0)return true;
 var reg = /^(\d{4})(-|\/)(0?[1-9]|1[0-2])(-|\/)(0?[1-9]|[12][0-9]|3[01])$/g; 
 var r = reg.exec(str); 
 if(r==null)return false;
 var d = new Date(r[1], r[3]-1,r[5]); 
 var newStr=d.getFullYear()+r[2]+(d.getMonth()+1)+r[2]+d.getDate()
 var reg=/(\/|-)(0*)( *)([1-9])/g  //(容許空格﹐這個可取消)
 var t=s.value.replace(reg,'$1$4')
 if (newStr==t)return true;
 return false;
}


欢迎在此留下您的脚步






评论内容 (*必填):
(Ctrl + Enter 快速提交)