处理了与日期相关的一些函数

//======================================================================================================================
//说明:本JS文件中主要处理了与日期相关的一些函数。
//function IsEmpty(obj)         日期是否为空判断
//function IsDate(fDate)        检查是否为有效日期, 否则提醒
//function CovertToStandard(date)      转换为能够转换为日期的正规string格式,再转换为日期
//function CompareDate(NowDate,ComDate)     两个日期比较
//function CheckDateRegion(object1,object2,seconds)  核查两个有关联的日期是否满足他们之间的关系(以秒为单位)
//======================================================================================================================

//以月份为单位限定两个日期的差距
function CheckDateRegion_Month(object1,object2,months)
{
 seconds = months * 30 * 24 * 60 * 60;
 CheckDateRegion(object1,object2,hours);
}
//以天数为单位限定两个日期的差距
function CheckDateRegion_Day(object1,object2,days)
{
 seconds = days * 24 * 60 * 60;
 CheckDateRegion(object1,object2,hours);
}
//以小时为单位限定
function CheckDateRegion_Hour(object1,object2,hours)
{
 seconds = hours * 60 * 60;
 CheckDateRegion(object1,object2,hours);
}
///////////////////////////////////////////////核查两个有关联的日期是否满足他们之间的关系(以秒为单位)////////////////////////////////////////////////
function CheckDateRegion(object1,object2,seconds)
{
 if(IsEmpty(object1)||IsEmpty(object2))
 {
  return false;//其中有一个为空
 }
 var startDate = document.all(object1).value;
 var endDate = document.all(object2).value; 
 if((!IsDate(endDate))||(!IsDate(startDate)))
 {
  alert("不是正确的日期格式");
  return false;
 }
 SDate = CovertToStandard(startDate);
 EDate = CovertToStandard(endDate);
 Msecond  = (SDate - EDate)/1000;//转换为秒
 if(abs(Msecond)>seconds)
  return false;
}
///////////////////////////////////////////////转换为能够转换为日期的正规string格式,再转换为日期//////////////////////////////
function CovertToStandard(date)
{
 var ss = date.split(" ");
 var bb = ss[0].split("-");
 var Str = bb[1]+"/"+bb[2]+"/"+bb[0]+" "+ss[1];
 regularStr = new Date(Str);
 return (regularStr);
}
///////////////////////////////////////////////  不能大于当前日期  ////////////////////////////////////////////////
///大于当前日期返回假,否则返回真
function BeforeCurrentDate(ComDate)
{
 nowDate = new Date();
 if(CompareDate(nowDate,ComDate))
 {
  return false;//alert("大于当前日期");
 }
 else
 {
  return true;//alert("小于当前日期");
 }
 
}
///////////////////////////////////////////////  两个日期比较  ////////////////////////////////////////////////
function CompareDate(NowDate,ComDate)
{
 if(ComDate>NowDate)
  return true; 
 else
  return false;
}

///////////////////////////////////////////////  日期是否为空判断  ////////////////////////////////////////////////
///为空返回真,否则返回假
function IsEmpty(obj)
{
 var empty = document.all(obj).value;
 if(empty=="")
 {
  alert("不允许为空");
  return true;
 }
 else
 {
  return false;
 }
}
//////////////////////////////////////////////// 检查是否为有效日期, 否则提醒 ////////////////////////////////////////////////
//有效日期返回真,否则返回假
function IsDate(fDate)
{
 if (vbIsDate(fDate))
  return true;
 return false;
}
////////////////////////////////////////////////   引用VB的JS文件   ////////////////////////////////////////////////
document.write("<script language=\"VBScript\" src=\"..\/js\/vbfunction.vbs\"><\/script>");//引用vb的教本文件


/////
////失败的函数
////
//////////////////////////////^&&&&&&&&&&&&&&&&不成功的&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&////////////////////////////////
//检查日期格式是否正确
//参数data:这个对象的值
//年份是4位数的数字
//月份是0-12月
//日期是30,31天要分出来的,2月份要另外的处理
//小时是0-23小时
//分钟是0-59分钟
//秒是0-59秒
function CheckDateStyle(date)
{
 var reg = /\d{4}-(?:[0][1-9]|[1][0-2])-\d{2}[ ](?:[0-1][0-9]|[2][0-3])[:][0-5][0-9][:][0-5][0-9]/;
 if(!reg.test(date))
 {
  alert("日期格式不正确,正确格式:YYYY-MM-dd HH:MM:SS");
  return false;
 }
 else
 {
  return true;
 }


posted @ 2007-03-10 19:15  荒芜  阅读(540)  评论(0编辑  收藏  举报