我试图获取输入字段值,将它们转换为毫秒,将它们全部加起来。
如何使用datejs计算小时数?
例如
<input type="text" class="singleSumma" value="03:30">
<input type="text" class="singleSumma" value="02:30">
<input type="text" class="singleSumma" value="03:45">
<script type="text/javascript">
$(document).ready(function(){
$(".singleSumma").each( function(){
var singleSummaVal= $(this).val();
if (singleSummaVal) {
var ssv = Date.parse(singleSummaVal).getTime();
//how to sum input values using datejs?
// result= ssv.add(ssv);
}
});
});
</script>
geoffrey.mcgill的解决方案
var t = Date.today();
var sum= 0 ;
$(".singleSumma").each(function() {
var singleSummaVal = $(this).val();
if (singleSummaVal) {
var ssv = Date.parse(singleSummaVal);
sum += (ssv - t);
var ts = new TimeSpan(sum);
console.log(ts.hours + ":" + ts.minutes);
}
});
答案 0 :(得分:1)
您必须从当天开始为每个值获取以毫秒为单位的值。然后将所有这些毫秒值一起添加并传递到新的TimeSpan对象。然后TimeSpan将计算天数,小时数,分钟数,秒数和毫秒数。
以下示例演示了整个方案。
示例强>
var d1 = Date.parse('03:30'),
d2 = Date.parse('02:30'),
d3 = Date.parse('03:45'),
t = Date.today();
var sum = (d1 - t) + (d2 - t) + (d3 - t);
var ts = new TimeSpan(sum);
console.log('hours', ts.hours); // 9
console.log('minutes', ts.minutes); // 45
希望这有帮助。
答案 1 :(得分:0)
尝试使用此
<script type="text/javascript">
$(document).ready(function(){
var totalSum = 0;
$(".singleSumma").each( function(){
var singleSummaVal= $(this).val();
if (singleSummaVal) {
var ssv = Date.parse(singleSummaVal).getTime();
totalSum += ssv;
}
});
alert('ts in seconds' + totalSum );
// or if you like other time properties
var sumDT = new Date();
sumDT.setTime(totalSum);
});
</script>