欢迎来到福编程网,本站提供各种互联网专业知识!

如何用javascript判断录入的日期是否合法

发布时间:2007-01-08 作者: 来源:转载
复制代码代码如下:functionIsValidYear(psYear){varsYear=newString(psYear);if(psYear==null){returnfalse;}if(isNaN(psYear)==true){returnfalse;}if(sYear==""){returntrue;}if(sYear.match(/[^0-9]/g)!=null){returnfalse;}varnYear=parseInt(sYear,10)
复制代码 代码如下:
functionIsValidYear(psYear)
{
varsYear=newString(psYear);


if(psYear==null)
{
returnfalse;
}


if(isNaN(psYear)==true)
{
returnfalse;
}

if(sYear=="")
{
returntrue;
}

if(sYear.match(/[^0-9]/g)!=null)
{
returnfalse;
}

varnYear=parseInt(sYear,10);

if((nYear<0)||(9999{
returnfalse;
}

returntrue;
}


functionIsValidMonth(psMonth)
{
varsMonth=newString(psMonth);

if(psMonth==null)
{
returnfalse;
}

if(isNaN(psMonth)==true)
{
returnfalse;
}

if(sMonth=="")
{
returntrue;
}

if(sMonth.match(/[^0-9]/g)!=null)
{
returnfalse;
}

varnMonth=parseInt(sMonth,10);

if((nMonth<0)||(12{
returnfalse;
}

returntrue;
}


functionIsValidDay(psDay)
{
varsDay=newString(psDay);

if(psDay==null)
{
returnfalse;
}

if(isNaN(psDay)==true)
{
returnfalse;
}

if(sDay=="")
{
returntrue;
}

if(sDay.match(/[^0-9]/g)!=null)
{
returnfalse;
}

varnDay=parseInt(psDay,10);

if((nDay<0)||(31{
returnfalse;
}

returntrue;
}


functionIsValidDate(psYear,psMonth,psDay)
{
if(psYear==null||psMonth==null||psDay==null)
{
returnfalse;
}

varsYear=newString(psYear);
varsMonth=newString(psMonth);
varsDay=newString(psDay);

if(IsValidYear(sYear)==false)
{
returnfalse;
}

if(IsValidMonth(sMonth)==false)
{
returnfalse;
}

if(IsValidDay(sDay)==false)
{
returnfalse;
}

varnYear=parseInt(sYear,10);
varnMonth=parseInt(sMonth,10);
varnDay=parseInt(sDay,10);

if(sYear==""&&sMonth==""&&sDay=="")
{
returntrue;
}

if(sYear==""||sMonth==""||sDay=="")
{
returnfalse;
}

if(nMonth<1||12{
returnfalse;
}
if(nDay<1||31{
returnfalse;
}

if(nMonth==2)
{
if((nYear%400==0)||(nYear%4==0)&&(nYear%100!=0))
{
if((nDay<1)||(nDay>29))
{
returnfalse;
}
}
else
{
if((nDay<1)||(nDay>28))
{
returnfalse;
}
}
}
elseif((nMonth==1)||
(nMonth==3)||
(nMonth==5)||
(nMonth==7)||
(nMonth==8)||
(nMonth==10)||
(nMonth==12))
{
if((nDay<1)||(31{
returnfalse;
}
}
else
{
if((nDay<1)||(30{
returnfalse;
}
}

returntrue;
}

相关推荐