页面有两个 input<input type="text" name="day1">  开始日
<input type="text" name="day2">  结束日
提交时要判断
1,7天 ~ 1个月
2,1个月 ~ 1年
3,2年以下怎么判断呢?

解决方案 »

  1.   

    看看下面的例子。
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>JS设置日期时间并比较对象</title>
    </head>
    <style type="text/css">
    body, td, input{font-family:Verdana; font-size:11px; color:#333333; font-weight:normal;}
    </style>
    <script language="javascript" type="text/javascript"> 
    String.prototype.trim = function() { 
    return this.replace(/(^[\uFEFF|\u00A0|\s]*)|([\uFEFF|\u00A0|\s]*$)/g, ""); 
    }; 
    function cal() { 
    var beginTime = document.getElementById("txtBegintime").value; 
    var endTime = document.getElementById("txtEndtime").value; 
    if (beginTime.trim() == "" || endTime.trim() == "") { 
    return; 
    }
    var arr1 = beginTime.split("-"); 
    var arr2 = endTime.split("-"); var dt1 = new Date(); 
    dt1.setFullYear(arr1[0]); 
    dt1.setMonth(arr1[1] - 1); 
    dt1.setDate(arr1[2].split(" ")[0]); 
    dt1.setHours(arr1[2].split(" ")[1].split(":")[0]);
    dt1.setMinutes(arr1[2].split(" ")[1].split(":")[1]);
    var dt2 = new Date(); 
    dt2.setFullYear(arr2[0]); 
    dt2.setMonth(arr2[1] - 1); 
    dt2.setDate(arr2[2].split(" ")[0]); 
    dt2.setHours(arr2[2].split(" ")[1].split(":")[0]);
    dt2.setMinutes(arr2[2].split(" ")[1].split(":")[1]);var dif = dt2.getTime() - dt1.getTime(); 
    var days = dif / (24 * 60 * 60 * 1000);  //求年差,时间差,等做响应修改
    //var days = dif / (60 * 60 * 1000); 
    //var days = dif / (60 * 1000); 
    document.getElementById("txtSimtime").value = days; 
    if (days>7 && days<31)
    alert("时间差在 7天 -- 1个月之间");
    else
    alert("时间差 不 在 7天 -- 1个月之间");

    //根据需要在进行其他处理

    </script>
    <body>
    <h3>JavaScript设置日期时间并比较时间的差值</h3>
    <br>
    <br>
    测试时间差问题:<br>
    时间1:
    <input type="text" id="txtBegintime" value="2009-04-30 8:30" onfocus="new WdatePicker(this,'%Y-%M-%D %h:%m',true,'whyGreen')" /> &nbsp;&nbsp;
    时间2:
    <input type="text"  id="txtEndtime" value="2009-05-16 15:30" onfocus="new WdatePicker(this,'%Y-%M-%D %h:%m',true,'whyGreen')" onblur="javascript:cal();"/>&nbsp;&nbsp;
    差值:
    <input type="text"  id="txtSimtime" />
    <input type="button" value="Test" onClick="javascript:cal();"></body>
    </html>
      

  2.   

    <html><head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>test</title>
    <script>
    function on_click(){
    var d1 = new Date(document.getElementById("day1").value.replace("-","/"));
    var d2 = new Date(document.getElementById("day2").value.replace("-","/"));
    var d3 = new Date(d1.getTime()+7*24*3600*1000);
    if(d3>d2){
    alert("小于7天!");
    }else{
    var d4 = new Date(d1.getTime());
    d4.setMonth(d4.getMonth()+1);
    if(d4>d2){
    alert("大于7天小于1个月!");
    }else{
    var d5 = new Date(d1.getTime());
    d5.setYear(d5.getYear()+1);
    if(d5>d2){
    alert("大于1月小于1年!");
    }else{
        d5.setYear(d5.getYear()+1);
        if(d5>d2){
    alert("大于1年小于2年!");
    }else{
        alert("大于2年!");
    }
    }
    }
    }
    }
    </script>
    </head><body>
    <input type="text" name="day1" id="day1" value="2008-07-01">  开始日
    <input type="text" name="day2" id="day2" value="2009-07-20">  结束日
    <input type="button" onclick="on_click()">
    </body></html>