【问题标题】:Second Click into Datepicker Input Field is Clearing Value第二次单击 Datepicker 输入字段正在清除值
【发布时间】:2020-04-26 07:43:12
【问题描述】:

我正在使用带有 datetime-local 的原生 Chrome 日期选择器,因为它符合我们的需求:

<div class="form-group" id="schedule-div">
  <div><label for="meeting-time">Schedule</label></div>
  <input type="datetime-local" class="job-schedule form-control" id="schedule">
</div>

为了将“min”值设置为今天的日期,我使用了一些 jQuery,如下所示:

$("#schedule").on("click", function (e) {
  const min = new Date().toISOString().substring(0, 16);
  $("#schedule").attr("min", min);
});

这解决了将“最小”日期设置为今天的问题。但是,我遇到的问题是,在输入框中的日期旁边是输入时间的部分。问题是,一旦我选择了正确的日期,当我在输入字段的“时间”部分单击时,它会清除输入 - 所以我刚刚通过日期选择器选择的日期就会消失。我认为这是因为我的“点击”再次触发了我的 jQuery。

我该如何处理,这样当我点击返回输入字段时日期不会清除?

【问题讨论】:

    标签: jquery datepicker


    【解决方案1】:

    将on 更改为one,它应该可以工作:)

    $("#schedule").one("click", function (e) {
      const min = new Date().toISOString().substring(0, 16);
      $("#schedule").attr("min", min);
    });
    

    这使您的点击event 只运行一次。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-07-11
      • 1970-01-01
      • 2018-08-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多