如何比较两个datepicker日期jquery

时间:2013-06-18 13:11:04

标签: javascript jquery

你能帮助我的人吗? 这是我的代码

var $from=$("#fromDate").datepicker('getDate');
var $to =$("#toDate").datepicker('getDate');
if($from>$to)
   alert("from date shouldn't greater than To date");
如果它是同一年的两个日期,那它正在工作。否则例如 fromDate ='1/12/2012'(年/月/日)到日= '18 / 6/2013'(年/月/日),当您检查条件时,它不起作用。它抛出警报,我给了。

3 个答案:

答案 0 :(得分:26)

我可以建议您自动限制日期吗?在此示例中,第二个组合框不允许您选择比您在fisrt上选择的日期更短的日期。

$(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)

      }

  }); 

});

这是一个有效的demo

答案 1 :(得分:2)

您需要使用它来获取日/月/年

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

之后,您可以比较这些值。

答案 2 :(得分:0)

$(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,
    })
});