本帖最后由 MiSenIn 于 2011-09-26 15:50:53 编辑

解决方案 »

  1.   


        function diffOverDay(o){
    var objTime = '2012-12-22';
            var temp = new Date(o.replace(/-/g,'/'));
            temp.setDate(temp.getDate());
    objTime = new Date(objTime.replace(/-/g,'/'));
    objTime.setDate(objTime.getDate());
    return (objTime-temp)/1000/60/60/24+'天';
        }
        var str = '2011-11-22';
        str = diffOverDay(str)
        alert(str)
      

  2.   


    <script  language="JavaScript">  
    btnCount_Click();
        function  btnCount_Click(){  
           var bDate=  "2007-7-10"  
           var eDate=  "2007-8-10"  
           alert(DateDiff(bDate,eDate))  
       }  
       //计算天数的函数
       function  DateDiff(beginDate,  endDate){    //beginDate和endDate都是2007-8-10格式
           var  arrbeginDate,  Date1,  Date2, arrendDate,  iDays  
           arrbeginDate=  beginDate.split("-")  
           Date1=  new  Date(arrbeginDate[1]  +  '-'  +  arrbeginDate[2]  +  '-'  +  arrbeginDate[0])    //转换为2007-8-10格式
          arrendDate=  endDate.split("-")  
           Date2=  new  Date(arrendDate[1]  +  '-'  +  arrendDate[2]  +  '-'  +  arrendDate[0])  
           iDays  =  parseInt(Math.abs(Date1-  Date2)  /  1000  /  60  /  60  /24)    //转换为天数 
           return  iDays  
       }    
    </script>
    注意月份的写法  你写12月份 实际上js理解的是从0开始的第十二个月  所以12月份实际上是11
      

  3.   


    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <html>
    <head>
        <title>new document</title>
        <script type="text/javascript">
            window.onload = function(){
    var mystr = "2012-12-23",
    d = 1000 * 60 * 60 * 24,
    e = new Date(mystr.replace(/-/g, "/")) - new Date();
    e = parseInt(e / d);
                alert("离世界末日还有 " + e + " 天");
            }
        </script>
    </head>
    </html>
      

  4.   

    getTime() 算出距 1970 年 1 月 1 日的毫秒数。
    然后想减,得出差值。
    然后用差值除以1000*60*60*24
      

  5.   

    var mystr="2012-12-23",
    end_time = new Date(mystr),
    current_time = new Date();
    if(current_time.getTime() > end_time.getTime()){
    alert('Game over...');
    }else{
    alert('Oh, my god! I\'m alive!!!');
    }
      

  6.   

    function compare(date)
      {
      var t = "2012-12-23"; 
      var r = /^(\d{4})-(\d{1,2})-(\d{1,2})$/; 
      r.test(t);
      var y = Number(RegExp.$1);
      var m = Number(RegExp.$2);
      var d = Number(RegExp.$3);  
      if(r.test(date))
      {
    var yt = Number(RegExp.$1);
      var mt = Number(RegExp.$2);
      var dt = Number(RegExp.$3);  
      if(yt>y)return true;
      if(yt==y && mt>m) return true;
      if(yt==y && mt==m && dt>d) return true;
      }
      return false;
      }
     
      alert(compare('2011-5-2')); //false;
      alert(compare('2013-4-6')); //true;
      alert(compare('2012-12-22')); //false;
      

  7.   


    var str="2012-12-23";
    alert((new Date(str.replace(/-/g,'\/')).getTime()-(new Date).getTime())/1000/3600/24);
      

  8.   


            DateTime d1, d2;
            d1 = DateTime.Now;
            d2 = Convert.ToDateTime("2012-12-23");
            TimeSpan sp = new TimeSpan();
            sp = d2.Subtract(d1);
            double res = sp.TotalSeconds;
            if (res>0)
                Response.Write("2012-12-23比今天大");
            else
                Response.Write("2012-12-23比今天小");