Javascript 输入打印

Javascript 输入打印,javascript,html,forms,Javascript,Html,Forms,我有一个问题要计算,当用户输入生日的日期,看看还有多少是留给下一个,结果写在输入。代码如下: <script type="text/javascript"> function calcform(){ with (document.form1) { var today = new Date(); var fullyear = today.getFullYear(); var future = new Date(+number1.value+ full

我有一个问题要计算,当用户输入生日的日期,看看还有多少是留给下一个,结果写在输入。代码如下:

<script type="text/javascript">
  function calcform(){
    with (document.form1) {
    var today = new Date();
    var fullyear = today.getFullYear();
    var future = new Date(+number1.value+ fullyear);
    var diff = future.getTime() - today.getTime();
    var days = Math.floor(diff / (1000 * 60 * 60 * 24 ));
    }
  }
</script>
<form name="form1" action="">
    Type your date birth:
    <input type="text" id="number1" value="" size="30" /><br/>
    <p>
    Number of days until your birthday:
    <input type="text" id="result" value="" size="13" /><br/>
    <p>
    <input type="button" id="Calculate" value="Calculate" onclick="calcform()" />
    <input type="reset" value="Clear"/>
</form>

修正了它,你需要增加日期直到下一个生日大于当前日期,然后测量天数

function calcform(){
    var today = new Date();
    var fullyear = today.getFullYear();
    var future = new Date(document.getElementById('number1').value);
    future.setFullYear(fullyear);
    if(future.getTime()<today.getTime()) future.setFullYear(fullyear+1);
    var diff = future.getTime() - today.getTime();
    var days = Math.floor(diff / (1000 * 60 * 60 * 24 ));
    document.getElementById('result').value=days;
}

在1.value之前,从var future行中去掉加号。函数有问题。输入日期dd/mm/yyyy时,我没有得到确切的天数?