比较开始时间和结束时间

Dev*_*Man 1 javascript php validation jquery

我知道这里有很多与此主题有关的问题,但没人问我这个问题。

该脚本用于保留,用户可以选择日期以及开始和结束时间进行保留。我有一个带有日期选择器输入字段和两个时间选择器输入字段的表单,一个用于开始时间,一个用于结束时间。

问题是我正在为其编写预订脚本的商店从17:00晚上开放到01:00早上。因此,如果某人在23:00到01:00之间进行预订,则开始时间始终显示为较大,这导致该表单未通过验证。

有谁知道这是否有解决方案,或者是否有可以这样做的验证器。

注意:我只想比较时间,并且不想添加其他日期字段。

在此处输入图片说明

var timeto=$('#timeto').val();
var timefrom=$('#timefrom').val();
        if(timefrom>timeto){
            alert('start time should be smaller')
        }
Run Code Online (Sandbox Code Playgroud)

因此,如果time from23:00和time to00:00比显示的警报高,但实际上00:00比23:00更长的时间

spl*_*h58 6

创建日期对象时只需减去一小时。

var timefrom = new Date();
temp = $('#timefrom').val().split(":");
timefrom.setHours((parseInt(temp[0]) - 1 + 24) % 24);
timefrom.setMinutes(parseInt(temp[1]));

var timeto = new Date();
temp = $('#timeto').val().split(":");
timeto.setHours((parseInt(temp[0]) - 1 + 24) % 24);
timeto.setMinutes(parseInt(temp[1]));

if (timeto < timefrom){
    alert('start time should be smaller than end time!');
}
Run Code Online (Sandbox Code Playgroud)