给你提供个JAVA代码,你参考一下,返回值是天数(和当前日期比较)。
public int dateOp(String beginDate) {
        int result = 0;
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");   
        Date date = new Date();
try {
date = sdf.parse(beginDate);
} catch (ParseException e) {
e.printStackTrace();
}   


        long now = new Date().getTime();
        long begin = date.getTime();
        long temp = Math.abs(begin - now);
        if (temp < 86400000L) {
            result = 0;
        } else
        if (temp >= 86400000L) {
            result = (int) (temp / 86400000L);
        }
        return result;
    }

解决方案 »

  1.   

    大哥,要javascript 代码,还有begindate为“2008-02-01”这种类型的,
    javasript中          var str_start=document.form_ot.start_date_1.value;        
            var start = new Date(str_start.substring(0,4),str_start.substring(5,7),str_start.substring(8,10));
         var down=new Date(); 
            var dDate=down.getDate(); 
            var dMonth=down.getMonth(); 
            var dYear=down.getYear(); 
    var now_date =dYear*365+dMonth*30+dDate;
    var start_year=str_start.substring(0,4)*365;
    var start_month=str_start.substring(5,7)*30;
    var start_date=str_start.substring(8,10);
    var start_time=start_year+start_month+start_date;
    var num=now_date-start_time;
    var value=Math.abs(num);
    if(value>31)
    {
     alert("31"); }为什么会出错呀,
    错1为 now_date 中加不了month的值,
    错2为start_time为0;