jQuery日期选择器未在外部单击上关闭

时间:2020-05-04 08:37:43

标签: javascript jquery datepicker

我有一个jQuery日期选择器,当单击图标时会打开。日期选择器正确打开,逻辑也正确发生。我遇到一个问题,即在外部单击(或失去焦点)时日期选择器无法关闭。在外面单击时如何关闭日期选择器?

代码是这样的

<i class="fad fa-calendar-week" id="edit-checkin-date" onclick="editCheckoutDates();"></i>

功能

function editCheckoutDates(){
  jQuery(function ($) {
  jQuery("#edit-checkin-date")
  .datepicker({
    language: "en",
    range: true,
    dateFormat: "M d",
    multipleDatesSeparator: " - ",
    minDate: from_min_date,
    maxDate: to_max_date,
    onSelect: function(formattedDate, date, inst) {
      if (date[0]) {  
        $("#from").val(
          ("0" + (date[0].getMonth() + 1)).slice(-2) +
          "/" + //month
          ("0" + date[0].getDate()).slice(-2) +
          "/" + //day
            date[0].getFullYear()
        ); //year);
      }
      if (date[1]) {
        $("#to").val(
          ("0" + (date[1].getMonth() + 1)).slice(-2) +
          "/" + //month
          ("0" + date[1].getDate()).slice(-2) +
          "/" + //day
            date[1].getFullYear()
        ); //year);
      }

      if (2 !== date.length) return;

    }
  });
});
}

当点击上述图标时,日期选择器将打开。但是问题是,在日期选择器外部单击时无法关闭。

1 个答案:

答案 0 :(得分:1)

尝试添加,

$("#edit-checkin-date").on("blur", function(e) { $(this).datepicker("hide"); });