how to compare two datepicker date jquery

anyone could you help me guys. this is my code

var $from=$("#fromDate").datepicker('getDate');
var $to =$("#toDate").datepicker('getDate');
if($from>$to)
   alert("from date shouldn't greater than To date");

it is working if it is two date same year year. otherwise for example fromDate='1/12/2012'(dd/mm/yyyy) toDate='18/6/2013'(dd/mm/yyyy), while you check condition, it is not working. it throws alert, which i given.

Answers:

Answer

Can I suggest auto limiting your dates instead? In this example the 2nd combo box won't allow you to pick a lower date than the one you pick on the fisrt one.

$(document).ready(function(){

  $("#txtFromDate").datepicker({

      numberOfMonths: 2,

      onSelect: function(selected) {

        $("#txtToDate").datepicker("option","minDate", selected)

      }

  });

  $("#txtToDate").datepicker({

      numberOfMonths: 2,

      onSelect: function(selected) {

         $("#txtFromDate").datepicker("option","maxDate", selected)

      }

  }); 

});

Here is a working demo

Answer

You need to use this to get the day/month/year

var day1 = $("#datepicker").datepicker('getDate').getDate();                 
        var month1 = $("#datepicker").datepicker('getDate').getMonth() + 1;             
        var year1 = $("#datepicker").datepicker('getDate').getFullYear();

After that you can compare the values.

Answer
Date.parse(fromDate) > Date.parse(toDate)

Example

var sDate = $('#EFT_FRM_DATE').val();
var eDate = $('#EFF_TO_DATE').val();

if (Date.parse(sDate) > Date.parse(eDate) || Date.parse(sDate) == Date.parse(eDate)) {
   ShowMessage(CurrencySetupExchangeIndex.EndDateGreaterStartDate, 'Error');
   //alert
   return false;
   return;
}

simplified statement:

if (Date.parse(sDate) >= Date.parse(eDate)) {...
Answer

$(document).ready(function(){
$("#startdate").datepicker({
        todayBtn:  1,
        format: "dd-mm-yyyy",
        startDate: '1d',
        autoclose: true,
    }).on('changeDate', function (selected) {
        var minDate = new Date(selected.date.valueOf());
        $('#enddate').datepicker('setStartDate', minDate);
        if($('#enddate').val() !="" && ($("#enddate").datepicker("getDate") == null || Date.parse($("#enddate").datepicker("getDate"))< Date.parse($("#startdate").datepicker("getDate")))){
            var date = new Date($("#startdate").datepicker("getDate")).toLocaleDateString();
            date = date.split("/")
            date = date[0]+"-"+date[1]+"-"+date[2]
            $('#enddate').val(date)
        }
    });
    $("#enddate").datepicker({
        format: "dd-mm-yyyy",
        autoclose: true,
    })
});

Tags

Recent Questions

Top Questions

Home Tags Terms of Service Privacy Policy DMCA Contact Us

©2020 All rights reserved.