<script language="javascript">
<!--
var d1 = "2006-04-27";
var d2 = "2006-05-02";
ar = d1.split("-");
var d1 = new Date(ar[0],ar[1]-1,ar[2]);
ar = d2.split("-");
var d2 = new Date(ar[0],ar[1]-1,ar[2]);
ar = [];
while(1){
if(d1.getTime() == d2.getTime()) break;
d1.setDate(d1.getDate()+1);
m = d1.getMonth() < 10 ? "0" + (d1.getMonth()+1) : d1.getMonth()+1;
d = d1.getDate() < 10 ? "0" + d1.getDate() : d1.getDate();
ar.push( d1.getFullYear() + "-" + m +"-" + d );
}
alert(ar);
//-->
</script>

解决方案 »

  1.   

    十分感谢
    有一个地方需要稍微改一下:
    d1.getMonth() < 10 ? "0"和d1.getDate()<10 ? "0"这两处分别把10换成9就ok了,否则输入2006-09-30和2006-10-01就会得出2006-010-01了.
      

  2.   

    m = d1.getMonth()+1 < 10 ? "0" + (d1.getMonth()+1) : d1.getMonth()+1;
    or
    m = d1.getMonth() < 9 ? "0" + (d1.getMonth()+1) : d1.getMonth()+1;d = d1.getDate() < 10 ? "0" + d1.getDate() : d1.getDate();
    是正确的