如何在jQuery UI datepicker onSelect函数中查看其他月份?

时间:2014-01-26 15:07:54

标签: jquery jquery-ui if-statement datepicker

我正在使用jQueryUI datepicker。

$('#myDiv').datepicker({
   onSelect: function(dateText){
      //my function
   });
});

dateText 来自 yymmdd
现在是1月。我可以选择当前月份的日期(1-31)或其他月份的日期(12月30日,31日和2月1日)。 我的问题是 - 我们可以检查选择的月份(当前,上一个或下一个)并在 onSelect 中创建一个if / else语句吗? 像

这样的东西
$('#myDiv').datepicker({
  onSelect: function(dateText){
    if( prevMonth ){
      //my function 1
    }else if ( nextMonth ){
      //my function 2
    }else{ //currentMonth
      //my function 3 
  });
});

谢谢!

1 个答案:

答案 0 :(得分:0)

我制作了一个简单的片段来完成你想要的东西。但要小心:您只会知道所选月份是在当月之前还是之后。我不是在比较日期,只是几个月。比较日期应该使用比较运算符,例如<,>,<=,=>,==(请点击此链接获取更多信息:Compare two dates with JavaScript

$(function () {
    $("#datepicker").datepicker({
        onSelect: function (dateText) {

            var d = new Date(dateText),
                date_month = d.getUTCMonth() + 1;

            var today = new Date(),
                today_month = today.getUTCMonth() + 1;

            if (date_month < today_month) {
                $('#result').html('Previous month selected');
            } else {
                if (date_month > today_month) {
                    $('#result').html('Next month selected');
                } else {
                    $('#result').html('Same month selected');
                }
            }
        }
    });
});

JSFiddle:http://jsfiddle.net/franverona/ZYB9M/