Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 设置从Bootstrap 3日期选择器打开的月份_Jquery_Twitter Bootstrap 3_Datepicker - Fatal编程技术网

Jquery 设置从Bootstrap 3日期选择器打开的月份

Jquery 设置从Bootstrap 3日期选择器打开的月份,jquery,twitter-bootstrap-3,datepicker,Jquery,Twitter Bootstrap 3,Datepicker,我正在使用Bootstrap 3日期选择器: 我已经将minDate设置为未来,但当我打开datepicker时,它会显示当前月份,尽管我无法从该月份选择任何日期。我想,如果当前月份不可用,datepicker将在第一个可能的月份打开。我怎么能这样做 我的初始代码: $("#mySelector").datetimepicker({ minDate: new Date(2015,3,12), maxDate: new Date(2015,3,15), pickTime:

我正在使用Bootstrap 3日期选择器:

我已经将minDate设置为未来,但当我打开datepicker时,它会显示当前月份,尽管我无法从该月份选择任何日期。我想,如果当前月份不可用,datepicker将在第一个可能的月份打开。我怎么能这样做

我的初始代码:

$("#mySelector").datetimepicker({
    minDate: new Date(2015,3,12),
    maxDate: new Date(2015,3,15),
    pickTime: false,
    useCurrent: false,
    useStrict: true
});
使用
defaultDate
选项:


在此日期选择器打开的是defaultDate月份,而不是当前日期。

我也遇到了同样的问题,不希望设置默认日期(用户必须选择日期)

以下是我如何应对的:

  $('#mySelector').on('dp.show', function(e) {
    datePicker = $('#mySelector').data("DateTimePicker");
    if (datePicker.date() == null || datePicker.date().isBefore(datePicker.minDate())) {
      datePicker.date(datePicker.minDate());
      datePicker.date(null);
    }
  });
如果日期选择为空,或低于最小日期(如果可以更改),则我们首先将当前日期设置为最小日期(这将强制选择器选择正确的月份,然后再次清除选择)

我试着在初始化后立即调用它,但它不起作用,所以我改为绑定到“dp.show”事件


如果你的minDate可以在加载选择器时更改,我建议在更改日期后立即调用它,立即清除无效的日期选择并移动到正确的月份(我在链接选择器中使用它)

谢谢你的建议,但这个解决方案的问题是,那个么defaultDate将是输入字段中的默认答案。我想将答案保留为空作为默认值,并让用户选择日期(而不是不加考虑地继续)
$("#mySelector").data("DateTimePicker").setDate(null);
  $('#mySelector').on('dp.show', function(e) {
    datePicker = $('#mySelector').data("DateTimePicker");
    if (datePicker.date() == null || datePicker.date().isBefore(datePicker.minDate())) {
      datePicker.date(datePicker.minDate());
      datePicker.date(null);
    }
  });