用html的time控件获取起始时间值,并用JavaScript计算相隔时间数,保留2位小数
时间: 2024-03-27 12:37:05 浏览: 181
JS计算两个时间相差分钟数的方法示例
可以使用 HTML 的 `<input type="time">` 控件来获取起始时间值,然后使用 JavaScript 计算相隔时间数,并保留 2 位小数。
以下是一个示例代码:
```html
<label for="startTime">起始时间:</label>
<input type="time" id="startTime">
<br>
<label for="endTime">结束时间:</label>
<input type="time" id="endTime">
<br>
<button onclick="calcTime()">计算相隔时间数</button>
<p id="result"></p>
<script>
function calcTime() {
var startTime = document.getElementById("startTime").value;
var endTime = document.getElementById("endTime").value;
// 将时间字符串转换为 Date 对象
var startDate = new Date("1970-01-01T" + startTime + "Z");
var endDate = new Date("1970-01-01T" + endTime + "Z");
// 计算相隔时间数(单位:毫秒)
var diffTime = endDate.getTime() - startDate.getTime();
var diffSeconds = diffTime / 1000;
// 显示结果
var result = document.getElementById("result");
result.innerHTML = "相隔时间数:" + diffSeconds.toFixed(2) + " 秒";
}
</script>
```
以上代码中,我们首先在 HTML 中定义了两个 `<input type="time">` 控件,分别用于输入起始时间和结束时间。然后定义了一个按钮,当点击按钮时会调用 `calcTime()` 函数。
在 `calcTime()` 函数中,我们首先通过 `getElementById()` 方法获取起始时间和结束时间的值,并将其转换为 Date 对象。由于 `<input type="time">` 控件返回的是本地时间,所以我们需要将时间字符串与 "1970-01-01T" 字符串拼接,然后使用 `new Date()` 构造函数将其转换为 Date 对象。
接着,我们计算起始时间和结束时间的相隔时间数(单位:毫秒),并将其转换为秒数。最后,我们将结果显示在页面中,使用 `toFixed(2)` 方法保留 2 位小数。
需要注意的是,上述代码中的时间计算是基于本地时间的,如果需要基于其他时区进行计算,需要进行时区转换。
阅读全文