比较 jQuery 时间选取器值
compare jquery timepicker values
将 timepricker 设置为 24 小时作为关注者:
$(document).ready(function(){
$('input.timepicker').timepicker({
timeFormat: 'HH:mm',
minTime: '04:00',
interval: 10,
scrollbar: true,
dynamic: true
});
});
我有两个字段来获取开始和结束时间
<input type="text" class="timepicker" name="travelstart" id="travelstart" placeholder="Travel Start" style="width:25%">
<input type="text" class="timepicker" name="travelfinish" placeholder="Travel Finish" style="width:25%" readonly/>
需要某种方法来验证完成时间晚于开始时间。大致如下:
var ts = document.getElementById('travelstart')
var fs = document.getElementById('travelfinish')
if (ts.value => fs.value) { return false }
我假设你正在使用这个时间选择器jQuery插件。
首先,如果您只调用 document.getElementById('travelstart').value
它以格式返回时间 "04:00 AM"
这可能不是您想要的,因此更好地使用:
$('#options-change-event').timepicker().getTime()
以获取实际的 JavaScript Date 对象。
然后将两个时间都转换为时间戳,然后进行比较:
var tsDate = $('#options-change-event').timepicker().getTime();
var tsMinutes = 60 * tsDate.getHours() + tsDate.getMinutes();
// ... the same with the seconds timepicker
return tsMinutes > tfMinutes;
您需要做的就是将时间转换为单个单位并进行比较。由于它只是一个 24 小时的时间选择器,我们可以在这里使用分钟:
var ts = document.getElementById('travelstart').value;
var fs = document.getElementById('travelfinish').value;
var startTime, endTime, timeArr;
// split the hours and minutes
timeArr = ts.split(':');
// Hours is in timeArr[0]; minutes in timeArr[1];
startTime = (timeArr[0] * 60) + +timeArr[1];
// do the same for end time:
timeArr = fs.split(':');
endTime = (timeArr[0] * 60) + +timeArr[1];
// Now you can compare them
return startTime >= endTime;
相关文章:
- 使用引导时间选取器时,没有更新数据ng模型值
- Jquery 日期时间选取器错误
- 默认情况下,引导日期时间选取器当前日期和当前时间
- 日期时间选取器日期格式
- 引导日期时间选取器更改
- 在当天的时间选取器中禁用时间无法正常工作
- 引导日期时间选取器定位
- 将事件附加到启动日期时间选取器
- 在选择事件上引导日期时间选取器
- 日期时间选取器不起作用
- jQuery 时间选取器未加载动态文本字段
- 新日期在使用日期时间选取器时返回 NA 值
- 在日期时间选取器中重置日期
- 日期时间选取器初始化失败
- 引导日期时间选取器不适用于动态字段
- 角度引导时间选取器不绑定时间
- j查询日期选取器不显示时间输入值
- 如何从文本框中获取日期和时间选取器值
- 比较 jQuery 时间选取器值
- $(..).日期时间选取器不是一个函数