日历不是从今天开始jqueryui daterangepicker

时间:2019-01-18 15:22:07

标签: javascript jquery jquery-ui datepicker daterangepicker

我正在使用jQuery UI Daterangepicker(reference)。

我希望日历从今天开始,没有最大日期。我正在尝试使用日历中的时刻作为日期。

这是我拥有的HTML和JS代码,但它设置了今天的结束日期,没有minDate。

<input id="search-vac-daterange" name="search-vac-daterange">

$("#search-vac-daterange").daterangepicker({
    minDate: moment(),
    startDate: moment()
});

我还尝试了 minDate:new Date() startDate:new Date()。也没有结果。日期保留在今天作为结束日期。

注意:由于console.log(moment());时刻在工作,给我一个瞬间对象:

p {_isAMomentObject: true, _isUTC: false, _pf: {…}, _locale: j, _d: Fri Jan 18 2019 16:14:35 GMT+0100 (Midden-Europese standaardtijd), …}

编辑:我尝试了以下建议,但这些建议均未影响解决方案。

dateFormat: 'dd/mm/yy',
minDate: moment().format('DD/MM/YYYY'),
startDate: moment().format('DD/MM/YYYY'),

minDate: new Date(moment("11-02-1993").format("YYYY-MM-DD")),
startDate: new Date(moment("11-02-1994").format("YYYY-MM-DD")),

添加了图像以显示问题: jquery ui calednar problemn start date

1 个答案:

答案 0 :(得分:2)

您有两个问题。首先,moment()返回一个Moment对象,该对象对于选择器的minDatestartDate属性而言不是有效值。要解决此问题,只需传递一个标准的Date对象即可。

第二,您需要为datepickerOptions对象中的底层jQueryUI datepicker控件提供选项:

$("#search-vac-daterange").daterangepicker({
  datepickerOptions: {
    minDate: new Date(),
    startDate: new Date(),
    maxDate: '+1y' // required for future dates to be selectable
  }
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script type="text/javascript" src="//code.jquery.com/ui/1.9.2/jquery-ui.js"></script>
<link rel="stylesheet" type="text/css" href="//code.jquery.com/ui/1.9.2/themes/base/jquery-ui.css">
<script type="text/javascript" src="http://tamble.github.io/jquery-ui-daterangepicker/daterangepicker-master/jquery.comiseo.daterangepicker.js"></script>
<script type="text/javascript" src="https://cdn.jsdelivr.net/momentjs/2.3.1/moment.min.js"></script>
<input id="search-vac-daterange" name="search-vac-daterange">