Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/392.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从用户处获取日期输入,并使用javascript计算日期之间的差异_Javascript_Html - Fatal编程技术网

从用户处获取日期输入,并使用javascript计算日期之间的差异

从用户处获取日期输入,并使用javascript计算日期之间的差异,javascript,html,Javascript,Html,使用 <input type="date" id="date1" onchange='leavenumber();'/> <input type="date" id="date2" onchange='leavenumber();'/> 您应该使用document.getElementById(“日期”).value而不是document.getElementById(“日期”).valueAsDate,它为您提供了一个date对象,而不是可用于进一步计算的原始字符串。

使用

<input type="date" id="date1" onchange='leavenumber();'/>
<input type="date" id="date2" onchange='leavenumber();'/>

您应该使用
document.getElementById(“日期”).value
而不是
document.getElementById(“日期”).valueAsDate
,它为您提供了一个
date
对象,而不是可用于进一步计算的原始字符串。

我建议使用该库。通过这种方式,你可以很容易地测量差异——以天、小时等为单位。我给你举一个以天为单位测量差异的例子

var leavenumber = function(){
        var date1 = moment(document.getElementById("date1").value);
        var date2 = moment(document.getElementById("date2").value);
        if (date1.isValid() && date2.isValid()) {
            console.log(date1.diff(date2, 'days'))
        }
       }

这是否回答了您的问题?不,它返回NaN。
var leavenumber = function(){
        var date1 = moment(document.getElementById("date1").value);
        var date2 = moment(document.getElementById("date2").value);
        if (date1.isValid() && date2.isValid()) {
            console.log(date1.diff(date2, 'days'))
        }
       }