验证-1个字段不大于另一个字段

Validation - 1 Field not greater than another

本文关键字:字段 另一个 不大于 验证 -1个      更新时间:2023-09-26

我使用的是2个jquery日期选择器。当日期选择器的值相等时,我想防止时间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);        
              }
         });
     }
 });

我认为您可以通过比较运算符来比较日期date('date')的两个对象

if(parseFloat($("#StartTime").val()) > parseFloat($("#EndTime").val()))

更换

if(new Date($("#StartTime").val()) > new Date($("#EndTime").val()))

我不确定我是否按照你的需要做出了确切的改变。但我已经给了你关于日期对象比较的想法。