没有内联日期选择器的日期范围

时间:2016-05-09 10:45:29

标签: jquery jquery-ui-datepicker

我试图在这个帖子中做一些事情: Date range picker on jquery ui datepicker

但我不希望datepicker是内联的,并且此代码仅适用于内联日期选择器。

在选择#date1或#date2输入时,我只需要datepicker。

我一定很容易,但是我被困在这里,我在谷歌找到的唯一解决方案是插件或内联日期选择器。

1 个答案:

答案 0 :(得分:0)

jQuery UI的DatePicker默认情况下是下拉列表,所以你发现的例子有点过时了。

https://jsfiddle.net/gRoberts/z4j227h6/

$( "#from" ).datepicker({
  defaultDate: "+1w",
  changeMonth: true,
  numberOfMonths: 3,
  onClose: function( selectedDate ) {
    $( "#to" ).datepicker( "option", "minDate", selectedDate );
  }
});
$( "#to" ).datepicker({
  defaultDate: "+1w",
  changeMonth: true,
  numberOfMonths: 3,
  onClose: function( selectedDate ) {
    $( "#from" ).datepicker( "option", "maxDate", selectedDate );
  },
  beforeShowDay: function (date) {
    var date1 = $.datepicker.parseDate($.datepicker._defaults.dateFormat, $("#from").val());
    var date2 = $.datepicker.parseDate($.datepicker._defaults.dateFormat, $("#to").val());
    return [true, date1 && ((date.getTime() == date1.getTime()) || (date2 && date >= date1 && date <= date2)) ? "dp-highlight" : ""];
  },
});

上面的代码/小提示显示,只需进行一些小的更改,您就可以在下拉列表中复制功能。

HTH。