前天JS处理时间差(返回各种类型:天、时、分、秒)

      借助优秀的Javascrīpt框架jquery

<script type="text/javascript" src="${pageContext.request.contextPath}/scripts/js/jquery-1.4.4.min.js"></script>

    /*
     * 获得时间差,时间格式为 年-月-日 小时:分钟:秒 或者 年/月/日 小时:分钟:秒
     * 其中,年月日为全格式,例如 : 2010-10-12 01:00:00
     * 返回精度为:秒,分,小时,天
     * @gbf time:2014-2-28
     */
    
function GetDateDiff(startTime, endTime, diffType) {
         //将xxxx-xx-xx的时间格式,转换为 xxxx/xx/xx的格式
         startTime = startTime.replace(/-/g, "/");
         endTime = endTime.replace(/-/g, "/");
         //将计算间隔类性字符转换为小写
         diffType = diffType.toLowerCase();
         var sTime = new Date(startTime); //开始时间
         var eTime = new Date(endTime); //结束时间
         //作为除数的数字
         var divNum = 1;
         switch (diffType) {
             case "second":
                 divNum = 1000;
                 break;
             case "minute":
                 divNum = 1000 * 60;
                 break;
             case "hour":
                 divNum = 1000 * 3600;
                 break;
             case "day":
                 divNum = 1000 * 3600 * 24;
                 break;
             default:
                 break;
         }
         return parseInt((eTime.getTime() - sTime.getTime()) / parseInt(divNum));
     }

 

///////////////前台将时间类型转换成上面方法的参数类型(yyyy-mmdd)/////////////////////////

function  ChangeDateToString ( DateIn ) 
     {
          var  Year = 0 ; 
          var  Month = 0 ; 
          var  Day = 0 ; 
          var  CurrentDate = "" ; 
          //  初始化时间
          Year = DateIn . getYear (); 
          Month = DateIn . getMonth ()+ 1 ; 
          Day = DateIn . getDate (); 
          CurrentDate = Year + "-" ; 
          if  ( Month >= 10 ) 
          { 
              CurrentDate = CurrentDate + Month + "-" ; 
          } 
          else  
          { 
               CurrentDate = CurrentDate + "0" + Month + "-" ; 
          } 
          if  ( Day >= 10 ) 
          { 
              CurrentDate = CurrentDate + Day ; 
          } 
          else  
          { 
              CurrentDate = CurrentDate + "0" + Day ; 
          } 
          return  CurrentDate ; 
     }

 

//例子

            var insbegtime=Ext.getCmp("updbegtime").getValue();
            var insendtime=Ext.getCmp("updendtime").getValue();
            var sbeg=ChangeDateToString(insbegtime);
            var send=ChangeDateToString(insendtime);
            var days = GetDateDiff(sbeg,send,"day");
            if(days<30){
             Ext.MessageBox.alert("信息提示","该培训经历开始到结束时间不满足要求!");
             return;
             }

你可能感兴趣的:(JS前台,处理时间差)