例如:输入2007-01-01 和2007-01-05,通过js处理后,出来如下列表值2007-01-01,2007-01-02,2007-01-03,2007-01-04,2007-01-05

解决方案 »

  1.   

    <script language="JavaScript">
    <!--
    function getDate(){
    var start = document.getElementById("start").value.split("-");  
    var startDate = new Date(start[1] + '-' + start[2] + '-' + start[0]); var end = document.getElementById("end").value.split("-");
    var endDate = new Date(end[1] + '-' + end[2] + '-' + end[0]);
     
    var iDays = parseInt((endDate - startDate)/1000/60/60/24);//得到2个时间之间相差的天数

    var result = "";
    for(var i=0; i<=iDays; i++){ 
    var aa  = startDate.valueOf() + i * 24 * 60 * 60 * 1000;
    var a = new Date(aa); 
    if(i==0){
    result = a.getYear()+"-"+(a.getMonth()+1)+"-"+a.getDate();
    }else{
    result += " , " + a.getYear()+"-"+(a.getMonth()+1)+"-"+a.getDate();
    }
    }
    alert(result);
    }
    //-->
    </script>
    <body>
    <form method=post action="">
    日期格式:2008-03-14<br>
    start date:<input type="text" name="start" id="start"><br>
    end date:<input type="text" name="end" id="end"><br>
    <input type="submit" onclick="getDate()">
    </form>
    </body>