$(...)。datepicker(...)。data(...)。selectDate不是函数

时间:2018-04-06 14:44:18

标签: javascript jquery typescript

我的功能适用于datepickers

这是

$(".multi_datepicker").each((key, elem) => {
  $(elem)
    .datepicker({
      language: gon.locale,
      minDate: new Date($(elem).attr("data-mindate")),
      maxDate: new Date($(elem).attr("data-maxdate")),
      autoClose: true,
      onShow: (inst, animationCompleted) => {
        if (animationCompleted) return true;
        var id = Number(inst.$el.attr("id").split("_")[2]);
        if (id < 0) return true;
        var previous = $(`#search_legs_${id - 1}_date`);
        if (previous.length == 0) return true;
        var date = previous.datepicker().data("datepicker")
          .selectedDates[0];
        if (inst.selectedDates[0] < date) inst.selectedDates = [date];
        inst.update("minDate", date);
      },
      onSelect: (dateText, inst) => {
        var no_count = Number($("#search_no_legs").val());
        var p = $("#search_legs_0_date").val();
        for (let i = 1; i < no_count; i++) {
          var leg_id = `#search_legs_${i}_date`;
          if ($(leg_id).val() < p) $(leg_id).val(p);
          p = $(leg_id).val();
        }
      }
    })
    .data("datepicker")
    .selectDate(new Date($(elem).attr("data-defaultDate")));
});

}

但最后一行导致错误

  

$(...)。datepicker(...)。data(...)。selectDate不是函数

我无法理解为什么?

我如何解决?

1 个答案:

答案 0 :(得分:-2)

创建日期选择器后,您是否尝试过使用.selectDate()? 它最终会是这样的:

$(elem).datepicker(..).data(..);
$(elem).selectDate(..);