gpt4 book ai didi

javascript - 使用 24 小时格式的小时列表填充数组

转载 作者:行者123 更新时间:2023-12-02 20:51:47 25 4
gpt4 key购买 nike

我有两个输入来选择每小时范围,如下所示:

<input type="text" id="from" name="from" value="1:00" />
<input type="text" id="to" name="to" value="20:00" />

我使用 jQuery 将数据存储在类似数组的波纹管中:

["1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20"]

如果结束时间输入大于开始时间输入,我找到了一种方法,如下所示

let hoursTo = $('#to').val();
let hoursFrom = $('#from').val();
if (hoursFrom < hoursTo) {
for (let i = hoursFrom; i <= hoursTo; i++) {
runHoursArray.push(i.toString());
}
}else {
// need help in the store logic in order to cover nightshifts
}

但这不包括夜类,因此,我需要帮助来存储如下数据。

预期结果:

如果我选择 19:00 到 2:00,它应该显示如下:

["19","20","21","22","23","0","1","2"]

注意:我只想存储时间

谢谢。

最佳答案

根据解释和大量假设,我正在写这个答案。

在写答案之前,我希望你纠正这部分。您需要 .val() 进行比较。您没有比较元素。

let hoursTo = $('#to').val();
let hoursFrom = $('#from').val();

如果您还想添加夜类,那么是的,您必须允许这样的值。你能做的是,检查时长,如果时长不人道,比如23小时(一般没有人喜欢工作23小时),就告诉它无效。

为此,您可以执行以下操作:

let hoursFrom = +$('#from').val();
let hoursTo = +$('#to').val();

$("button").click(function () {
if ((hoursFrom > hoursTo && hoursTo + 24 - hoursFrom <= 12) || hoursFrom <= hoursTo) {
console.log("Valid");
} else {
console.log("Invalid");
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input id="from" type="number" />
<input id="to" type="number" />
<button>Validate</button>

关于javascript - 使用 24 小时格式的小时列表填充数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61591311/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com