невозможно выполнить проверку даты с помощью jquery - PullRequest
1 голос
/ 20 сентября 2019

У меня есть текстовое поле, в котором я буду указывать дату в текстовом поле, и мне нужно сравнить эту дату в текстовом поле с текущей датой, когда она работает на прошлую дату, которая является ожидаемым результатом, но если я даю будущую дату, то еевсе еще показывает мне подтверждение вместо вставки даты. Как я могу решить эту проблему

Ниже мой код, который я использовал

var currentdate = new Date();

var todayDate = (currentdate.getMonth() + 1) + "/" + currentdate.getDate() + "/" + currentdate.getFullYear();
if ($("#txtDate").val() < todayDate)  //txtdate is 10/20/2019 and today date is 09/20/2019 but still i am getting validation which should not happen
{
            MessageDisp('divAlertMessage', "Date Cannot Be Less Than Today's Date.", 'Error');
            return false;
        }

1 Ответ

3 голосов
/ 20 сентября 2019

Вы сравниваете текст, а не объект даты и, следовательно, получаете неправильный результат.преобразовать текстовое значение в дату, а затем сравнить две даты для проверки.

$(function(){

var currentdate = new Date();
 $('#btnValidate').on('click', function(){
    var dateTxt = $('#txtDate').val();
    var date = new Date(dateTxt);
    
    if(date < currentdate) {
      console.log("Date Cannot Be Less Than Today's Date.");
      return false;
    }  else {
      console.log("Date is more Than Today's Date.");
      return true;
    }
 });

        
 });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<input id='txtDate'><br>
<input type="button" id="btnValidate" value="Validate">
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...