0
我试图计算两个表单域之间的时差&,但我得到“无效日期”返回。我试图使用其他例子,并使它们适合我的需求。输入用于开始和结束字段。moment.js“无效日期”计算时间差
<script type="text/javascript" src="/js/moment.js"></script>
<script type="text/javascript">
function calculate(){
var start = document.getElementById(StartTime);
var end = document.getElementById(EndTime);
var diff = moment.utc(moment(end,"HH:mm").diff(moment(start,"HH:mm"))).format("HH:mm")
document.form.total.value = diff;
}
</script>
<form method="POST" name="form" id="form" action="test2.php">
<?php
echo "time1: <input type='text' name='StartTime' id='StartTime' onChange='calculate()'/> <br />";
echo "time2: <input type='text' name='EndTime' id='EndTime' onChange='calculate()' /> <br />";
echo "difference: <input type='text' name='total' id='total' /> <br /> ";
echo "<Br />";
?>
</form>
感谢
'getElementById'接受一个字符串,所以它应该是'var start = document.getElementById(“StartTime”);'等等......见https://developer.mozilla.org/en-US/docs/ Web/API/document.getElementById – nha
感谢@nha,这是固定的“无效日期”的问题,现在我需要移动到下一期的差异显示“00:00” – Brett
什么是你的每个日期的输入呢?和你见过这个答案http://stackoverflow.com/questions/12593653/moment-js-diff-incorrect? – nha