Javascript 如何比较输入的TimeSpan与数据库中的TimeSpan
我在TimeSpan课上收到过两次来自数据库的信息Javascript 如何比较输入的TimeSpan与数据库中的TimeSpan,javascript,jquery,Javascript,Jquery,我在TimeSpan课上收到过两次来自数据库的信息 begTime = current.data('bgtime'); endTime = current.data('endtime'); 我将它们与用户输入的两次进行比较 $('#timeToStart').on('change', function () { var startTime = $('#timeToStart').val(); sTimeH
begTime = current.data('bgtime');
endTime = current.data('endtime');
我将它们与用户输入的两次进行比较
$('#timeToStart').on('change', function () {
var startTime = $('#timeToStart').val();
sTimeHire = startTime;
});
$('#timeToEnd').on('change', function () {
var endTime = $('#timeToEnd').val();
eTimeHire = endTime;
});
if (begTime > sTimeHire || endTime < eTimeHire) {
alert("yayy it works");
}
$('timeToStart')。在('change',函数(){
var startTime=$('#timeToStart').val();
sTimeHire=startTime;
});
$('#timeToEnd')。on('change',function(){
var endTime=$('#timeToEnd').val();
eTimeHire=结束时间;
});
如果(begTime>sTimeHire | | endTime
出于某种原因,如果sTimeHire和begTime都是7:00pm,那么它将进入if语句,即使它只应该在begTime大于7:00pm时才进入
但是,如果我单独使用endTime进行实验,它会工作,如果endTime和eTimeHire都是晚上9:00,它就不会进入if语句
我注意到begTime没有附加任何秒数,而我这样做警报(begTime)
有没有可能因为这个原因,它被认为比《刺激之火》的07:00:00更重要 您正在使用JavaScript并比较时间。使用
Date
对象提供帮助
var begTime = new Date(current.data('bgtime')).getTime(),
endTime = new Date(current.data('endtime')).getTime();
$('#timeToStart').on('change', function() {
var startTime = new Date($('#timeToStart').val()).getTime();
sTimeHire = startTime;
});
$('#timeToEnd').on('change', function() {
var endTime = new Date($('#timeToEnd').val()).getTime();
eTimeHire = endTime;
});
if (begTime > sTimeHire || endTime < eTimeHire) {
alert("yayy it works");
}
var begTime=new Date(current.data('bgtime')).getTime(),
endTime=新日期(current.data('endTime')).getTime();
$('timeToStart')。在('change',function()上{
var startTime=新日期($('#timeToStart').val()).getTime();
sTimeHire=startTime;
});
$('#timeToEnd')。on('change',function(){
var endTime=新日期($('#timeToEnd').val()).getTime();
eTimeHire=结束时间;
});
如果(begTime>sTimeHire | | endTime
未经测试,但这应该有助于您了解情况
Re:我的评论是,这并不是严格意义上的unix时间戳,因为它在ms
中,而不是s
,但由于它在任何地方都是相同的,所以同样的想法也适用于整数时间
编辑:根据建议从.now()切换到.getTime()。将时间转换为unix时间戳,然后比较整数。从那里,您可以转换回所需的任何格式。您从
当前.data('bgTime')
中获得哪些字符串,用户可以输入哪些值timeToStart
?因为TimeSpan
是一个.NET结构,它只是表示一个时间量(即5小时、30分钟、32秒),而不是一个特定的时间(即5:30:32 am)。请问您为什么使用now()
?它被定义为Date对象的静态成员,而不是实例方法。通常,人们会在日期对象上使用valueOf()
或getTime()
来获取自历元以来的毫秒数。感谢您的回答!我得到了这个错误:uncaughttypeerror:(中间值)。now不是一个函数