CSDN博客

img liuwei662656

摘自别人的,记不清地址了. 

发表于2004/12/30 20:57:00  628人阅读

<script language="javascript">
function IsDate(DateString , Dilimeter) //也是别人的.用法示例: IsDate("2004-5-6")返回true, IsDate("sdfsfs"返回 false
{
  if (DateString==null) return false;
  if (Dilimeter=='' || Dilimeter==null)
   Dilimeter = '-';
  var tempy='';
  var tempm='';
  var tempd='';
  var tempArray;
  if (DateString.length<8 && DateString.length>10)
    return false;   
  tempArray = DateString.split(Dilimeter);
  if (tempArray.length!=3)
   return false;
  if (tempArray[0].length==4)
  {
   tempy = tempArray[0];
   tempd = tempArray[2];
  }
  else
  {
   tempy = tempArray[2];
   tempd = tempArray[1];
  }
  tempm = tempArray[1];
  var tDateString = tempy + '/'+tempm + '/'+tempd+' 8:0:0';//加八小时是因为我们处于东八区
  var tempDate = new Date(tDateString);
  if (isNaN(tempDate))
   return false;
if (((tempDate.getUTCFullYear()).toString()==tempy) && (tempDate.getMonth()==parseInt(tempm)-1) && (tempDate.getDate()==parseInt(tempd)))
  {
   return true;
  }
  else
  {
   return false;
  }
}
  //功能:扩展日期函数,支持YYYY-MM-DD或YYYY-MMDD hh:mm:ss字符串格式
  //返回:如果正确,则返回javascript中支持UTC日期格式,如果错误,则返回false 
  //作者:王洪生(Kevin)
  //日期:2004-12-15
  //举例: var myDate = Date_Ex("2004-12-21 23:01:00"); //返回正确的日期
  //       var myDate = Date_Ex("2004-12-21");     //返回正确的日期
  //       var myDate = Date_Ex("2004-23-12 12:60:29");//返回false,且提示日期或时间超出有效范围
  function Date_Ex(value1)
  {
 var strDate = value1;
 if (strDate.length == 0)
  return false;

 //先判断是否为短日期格式:YYYY-MM-DD,如果是,将其后面加上00:00:00,转换为YYYY-MM-DD hh:mm:ss格式
 var reg = /^(/d{1,4})(-|//)(/d{1,2})/2(/d{1,2})/;   //短日期格式的正则表达式
 var r = strDate.match(reg);

 if (r != null)   //说明strDate是短日期格式,改造成长日期格式
   strDate = strDate + " 00:00:00";
 
 reg = /^(/d{1,4})(-|//)(/d{1,2})/2(/d{1,2}) (/d{1,2}):(/d{1,2}):(/d{1,2})/;
 r = strDate.match(reg);
 if (r == null)
 {
  alert("你输入的日期格式有误,正确格式为:2004-12-01 或 2004-12-01 12:23:45");
  return false;
 }

 var d = new Date(r[1], r[3]-1,r[4],r[5],r[6],r[7]);
 if (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]&&d.getHours()==r[5]&&d.getMinutes()==r[6]&&d.getSeconds()== r[7])
 {
  return d;
 }
 else
 {
  alert("你输入的日期或时间超出有效范围,请仔细检查!");
  return false;
 }
  }

</script>

0 0

相关博文

我的热门文章

img
取 消
img即使是一小步
也想与你分享
打开
img