我正在使用2个jquery日期选择器。当datepickers的值相等时 - 我想防止时间2大于时间1.时间是24小时HHMM(4个字符)文本框。
当日期选择器不相等时,任何东西都适合时代......
我有点工作,但不完全......我可以改变字段并绕过我不想要的验证....
也不知道“焦点”是否可行......
http://jsfiddle.net/rbla/90ps4h9n/5/
... HTML
Start Date: <input type="text" id="StartDate" name="datepicker1" value="" />
End Date: <input type="text" id="EndDate" name="datepicker2" value="" />
<br/><br/>
Time 1: <input type="text" id="StartTime" maxlength="4">
Time 2: <input type="text" id="EndTime" maxlength="4">
<div class="error" style="display:none">Time 1 needs to be less than Time 2<div>
...的JavaScript
$(function() {
$("#StartDate").datepicker({
dateFormat: "dd-M-yy"
});
$("#EndDate").datepicker({
dateFormat: "dd-M-yy"
});
});
$("#EndDate").change(function () {
var sDate = document.getElementById("StartDate").value;
var eDate = document.getElementById("EndDate").value;
if ((Date.parse(eDate) === Date.parse(sDate))) {
$("#EndTime").focusout(function(){
if(parseFloat($("#StartTime").val()) > parseFloat($("#EndTime").val()))
{
$(".error").css("display","block").css("color","red");
$("#submit").prop('disabled',true);
document.getElementById("EndTime").value = "";
}
else
{
$(".error").css("display","none");
$("#submit").prop('disabled',false);
}
});
}
});
答案 0 :(得分:0)
我认为您可以通过比较运算符
比较日期日期('日期')的两个对象if(parseFloat($("#StartTime").val()) > parseFloat($("#EndTime").val()))
替换
if(new Date($("#StartTime").val()) > new Date($("#EndTime").val()))
我不确定我是否根据您的需要进行了精确的更改。但我已经给你关于日期对象比较的想法。