jquery时间操作,获取输入框内的MM:SS格式的时间,并计算间隔小时数,保留2位小数
时间: 2023-08-23 14:12:43 浏览: 173
可以使用jQuery插件moment.js来操作时间。首先,你需要获取输入框内的时间值,然后将其转化为moment对象。接下来,计算时间间隔,最后将时间间隔转化为小时数,并保留2位小数。
下面是示例代码:
```javascript
// 获取输入框内的时间值
var timeStr = $('#time-input').val();
// 将时间值转化为moment对象
var time = moment('1970-01-01 ' + timeStr);
// 计算时间间隔
var duration = moment.duration(time);
// 将时间间隔转化为小时数,并保留2位小数
var hours = duration.asHours().toFixed(2);
console.log('时间间隔(小时):' + hours);
```
其中,`#time-input`是输入框的id,`timeStr`是输入框内的时间值,`duration`是时间间隔的moment对象,`hours`是时间间隔的小时数,使用`toFixed(2)`保留2位小数。
相关问题
jquery时间操作,获取两个输入框内的MM:SS格式的时间,并计算间隔小时数,保留2位小数
可以使用以下代码实现:
```javascript
// 获取输入框内的时间
var startTimeStr = $("#start-time").val();
var endTimeStr = $("#end-time").val();
// 将时间字符串转换为Date对象
var startTime = new Date("1970-01-01T" + startTimeStr + ":00Z");
var endTime = new Date("1970-01-01T" + endTimeStr + ":00Z");
// 计算时间间隔(单位为毫秒)
var interval = endTime.getTime() - startTime.getTime();
// 将时间间隔转换为小时数
var hours = interval / 1000 / 60 / 60;
// 保留2位小数
hours = hours.toFixed(2);
// 输出结果
console.log("时间间隔为:" + hours + "小时");
```
其中,`#start-time`和`#end-time`分别是起始时间和结束时间的输入框的id。在转换时间字符串为Date对象时,需要将其格式化为ISO 8601格式的时间字符串,即`"1970-01-01T00:00:00Z"`,然后再将小时和分钟部分替换为输入框内的时间。
jquery时间操作,获取输入框内的MM:SS格式的时间,并计算间隔小时数的方法
可以使用正则表达式来获取输入框内的MM:SS格式的时间,然后将其转换为JavaScript的Date对象,并计算时间间隔的小时数。
例如,如果你的输入框id为startTimeInput和endTimeInput,可以通过以下代码获取输入的时间并计算时间间隔的小时数:
```
var startTimeStr = $('#startTimeInput').val();
var endTimeStr = $('#endTimeInput').val();
// 获取开始时间对象
var startTimeRegex = /^(\d{2}):(\d{2})$/;
var startTimeMatch = startTimeStr.match(startTimeRegex);
var startTimeObj = new Date();
startTimeObj.setMinutes(parseInt(startTimeMatch[1]));
startTimeObj.setSeconds(parseInt(startTimeMatch[2]));
// 获取结束时间对象
var endTimeRegex = /^(\d{2}):(\d{2})$/;
var endTimeMatch = endTimeStr.match(endTimeRegex);
var endTimeObj = new Date();
endTimeObj.setMinutes(parseInt(endTimeMatch[1]));
endTimeObj.setSeconds(parseInt(endTimeMatch[2]));
// 计算时间间隔
var timeDiff = endTimeObj.getTime() - startTimeObj.getTime();
var hoursDiff = timeDiff / (1000 * 60 * 60);
// 输出小时数
console.log(hoursDiff);
```
这样就可以获取输入框内的时间,并计算时间间隔的小时数了。请注意,这里的正则表达式假设输入的时间格式为MM:SS,并且没有其他的字符或空格。如果你的输入框内可能包含多余的字符或空格,你需要根据实际情况修改正则表达式。
阅读全文