2015-02-06 93 views
-4

我想获得两个文本框之间的天数,但是如何使用JavaScript将日期转换为整数?如何获取JavaScript中两个文本框之间的天数?

<script type="text/javascript"> 
function calc(a,b,sub) { 
    var one = parseInt(a); 
    if (isNaN(one)) { 
     alert('Invalid entry: '+a); 
     one=0; 
    } 
    var two = parseInt(document.getElementById(b).value); 
    if (isNaN(two)) { 
     alert('Invalid entry: '+b); 
     two=0; 
    } 
    document.getElementById(sub).value =two-one; 
} 
</script> 

HTML

<input type="text" name="Itm_1" id="datepicker1" onchange="calc(Date.parse(this.value),'datepicker1','result')" required="" style="width:205px;" placeholder="<?php echo Date(" d/m/Y ");?>"/> 
<input type="text" name="Itm_2" id="datepicker2" onchange="calc(Date.parse(this.value),'datepicker2','result')" required="" style="width:205px;" placeholder="<?php echo Date(" d/m/Y ");?>"/> 
<textarea name="Itm_3" id="result" id="result" cols="30" rows="5" style="height:50px;" value="" readonly=""></textarea> 
+0

请出示代码 – 2015-02-06 03:06:11

+0

”/> – DOM 2015-02-06 03:08:25

+0

”/> DOM 2015-02-06 03:09:29

回答

0

如果你使用一个Date对象,以下网站声称你可以使用parse()方法,因为午夜1970年1月1日的毫秒数。如果你想在天的整数,可以通过(1000 * 60 * 60 * 24)划分:

http://www.w3schools.com/jsref/jsref_obj_date.asp

以下应该工作,如果我理解它是什么打算做正确(注意更改HTML输入)。

<script type="text/javascript"> 
function calc(a,b,sub) { 
    var one = (Date.parse(document.getElementById(a).value)/(1000*60*60*24)); 
    if (isNaN(one)) { 
      alert('Invalid entry: '+a); 
      one=0; 
    } 
    var two = (Date.parse(document.getElementById(b).value)/(1000*60*60*24)); 
    if (isNaN(two)) { 
     alert('Invalid entry: '+b); 
     two=0; 
    } 
    document.getElementById(sub).value =two-one; 
} 
</script> 

<input type="text" name="Itm_1" id="datepicker1" onchange="calc('datepicker1','datepicker2','result')" required="" style="width:205px;" /> 
<input type="text" name="Itm_2" id="datepicker2" onchange="calc('datepicker1','datepicker2','result')" required="" style="width:205px;" /> 
<textarea name="Itm_3" id="result" id="result" cols="30" rows="5" style="height:50px;" value="" readonly=""></textarea> 
+0

看起来像DOM击败了我,并给出了更完整的答案。干得好,DOM! – 2015-02-06 03:12:44

+0

答案是不正确的,当我点击从datetimepicker选择一个日期,它显示错误消息 – DOM 2015-02-06 03:23:29

相关问题