<script language="VBScript">
function Dayminus(asStartvalue,asEndvalue)
         Dayminus=datediff("d",asStartvalue,asEndvalue)
End function
</script>

解决方案 »

  1.   

    <body>
    <form>
    开始日期:<input id="instart" type="text" value="1999-10-10">
    结束日期:<input id="inend" type="text" value="2000-10-10">
    天数差:<input id="inDay" type=text size=5>
    <input type=button value="计算" onclick="inDay.value=Dayminus(instart.value,inend.value)">
    </form>
    <script>
    function Dayminus(asStartvalue,asEndvalue){
    loinStart = asStartvalue.split("-");
    loinEnd   = asEndvalue.split("-");

    var loStart = new Date(loinStart[0],loinStart[1]-1,loinStart[2],0,0,0,0);
    var loEnd   = new Date(loinEnd[0],loinEnd[1]-1,loinEnd[2],0,0,0,0);
    return (loEnd.getTime()-loStart.getTime())/(1000*24*3600);
    }
    </script>
    </body>
      

  2.   

    Pls Try:
    <body>
    <form>
    开始日期:<input id="instart" type="text" value="1999-10-10">
    结束日期:<input id="inend" type="text" value="2000-10-10">
    天数差:<input id="inDay" type=text size=5>
    <input type=button value="计算" onclick="inDay.value=Dayminus(instart.value,inend.value)">
    </form>
    <script>
    function Dayminus(asStartvalue,asEndvalue){
    loinStart = asStartvalue.split("-");
    loinEnd   = asEndvalue.split("-");
    var loStart = new Date(parseInt(loinStart[0]),parseInt(loinStart[1]-1),parseInt(loinStart[2]),0,0,0,0);
    var loEnd   = new Date(parseInt(loinEnd[0]),parseInt(loinEnd[1]-1),parseInt(loinEnd[2]),0,0,0,0);
    return (loEnd.getTime()-loStart.getTime())/(1000*24*3600);
    }
    </script>
    </body>
      

  3.   

    象这样的问题我碰到过, javascript 中 "12-20-0099" == "12-20-1999", 当 new date()时。正确的做法是用 Date 对象的 setFullYear() 方法,不过这是 MS JScript, IE 下没问题, netscape 下我未测试过:
      
       tmpdate1 = new Date();
       tmpdate2 = new Date();
       tmpdate.setFullYear(year1,month1,day1);
       tmpdate.setHours(0,0,0,0);
       tmpdate.setFullYear(year2,month2,day2);
       tmpdate.setHours(0,0,0,0);
       return (tmpdate2 - tempdate1)/86400000;  //(1000*60*60*24);
       
      

  4.   

    sorry, 其中的 month 要 减一, 如 1 月份, month = 0...