同格式字符串直接比较 如:2004-08-25>2004-03-25==true
或转化成日期后再比较

解决方案 »

  1.   

    如果两个文本框为 a1,a2
    JavaScript中
    var time1=this.from.a1.value;
    var time2=this.from.a2.value;
    如时间(time1,time2)为 "2004-9-5" 要转成"2004-09-05"
    然后比较time1和time2
    if (time1>time2)
    {
    -----
    }
      

  2.   

    只能自己写个函数,javascript书上讲过一个parse函数,但不好用function biggerThan(y1s,m1s,d1s,y2s,m2s,d2s){
    //(y1s,m1s,d1s)第一个日期
    //(y2s,m2s,d2s)第二个日期
    var y1=parseInt(y1s);
    var m1=parseInt(m1s);
    var d1=parseInt(d1s);
    var y2=parseInt(y2s);
    var m2=parseInt(m2s);
    var d2=parseInt(d2s);
    if(y1>y2) return true;
    else if(y1<y2) return false;
    else
    {
    if(m1>m2) return true;
    else if(m1<m2){return false;}
    else
    {
    if(d1>d2) return true;
    else {return false;}
    }
    }}
      

  3.   

    不用这么麻烦吧:)假如构造了两个Date类型的变量start和end,那么通过Date的方法getTime()方法所获取的对应该时间的自1970年1月1日的毫秒数,因此我们可以这样判断function dateDiff(start, end) {
      
      if (start.getTime() - end.getTime() >= 0) return true;
      else return false;
    }
      

  4.   

    to 楼上
    得到1970年1月1日的毫秒数的函数不是这个,而是parse().。
    至于getTime,书上讲的是完整时间,至于何为“完整时间”,我不知道
      

  5.   

    <script>
    //date1=new Date('12-11-2000');
    //date2=new Date('12-12-2000');
    //alert(date2-date1);//返回毫秒
    //alert(parseInt(Math.abs(date2 - date1) / 1000 / 60 / 60 /24));
    //计算两个日期的差值
      function DateDiff(sDate1, sDate2){  //sDate1和sDate2是2002-12-18格式
        var aDate, oDate1, oDate2, iDays;
        aDate = sDate1.split("-");
        oDate1 = new Date(aDate[1] + '-' + aDate[2] + '-' + aDate[0]) ; //转换为12-18-2002格式
        aDate = sDate2.split("-");
        oDate2 = new Date(aDate[1] + '-' + aDate[2] + '-' + aDate[0]);
        document.diff.date1change.value=oDate1;
        document.diff.date2change.value=oDate2;
     if((oDate2-oDate1)<=0){
      alert("0");
     }
        iDays = parseInt(Math.abs(oDate1 - oDate2) / 1000 / 60 / 60 /24);  //把相差的毫秒数转换为天数
        alert(iDays);
      }
    </script>
    <form name="diff">
    date1<input type="text" size=20 name="date1">
    date2<input type="text" size=20 name="date2">
    <input type="button" value="run" onclick="javascript:DateDiff(document.diff.date1.value,document.diff.date2.value);">
    <br/>
    date1-change<input type="text" size=40 name="date1change">
    <br/>
    date2-change<input type="text" size=40 name="date2change">
    </foem>
    这个你看一下~~~~~~~~~~日期差的~~~~~~~~~比如输入:
    1999-1-12003-10-2能得到时间差~~~~~~~~~你可以看下转化的格式
      

  6.   

    <script>
    date1=new Date('12-11-2000');
    date2=new Date('12-12-2000');
    alert("日期差值为:"+(date2-date1));
    </script>
      

  7.   

    日期格式相同,都是YYYY-MM-DD ,字符串直接比较就可以了