【问题标题】:datepicker, minDate, maxDate + dateformat issuedatepicker、minDate、maxDate + dateformat 问题
【发布时间】:2017-06-12 01:07:16
【问题描述】:

我对使用日期选择器的表单中的日期格式有疑问。

在我的表单中,我有 2 个日期字段 -> 开始日期和结束日期。

我想要开始日期

我还希望日期显示为“dd-mm-yy”。但是,它与 minDate 和 maxDate 混淆了。

例如,如果我设置 StartDate = 2017 年 1 月 3 日 (03-01-2017) 我无法在 3 月 2 日 (02-03-2017) 之前设置 EndDate,因为我猜它正在读取错误的顺序。 (03-01-2017 = 2017 年 3 月 1 日)。

我该如何解决这个问题?

这是我的代码:

$(document).ready(function() {
  $("#startdate").datepicker({
    dateFormat: 'dd-mm-yy',
    onSelect: function(selected) {
      var dt = new Date(selected);
      dt.setDate(dt.getDate() + 1);
      $("#enddate").datepicker("option", "minDate", dt);
    }
   });
   $("#enddate").datepicker({
    dateFormat: 'dd-mm-yy',
    onSelect: function(selected) {
      var dt = new Date(selected);
      dt.setDate(dt.getDate() - 1);
      $("#startdate").datepicker("option", "maxDate", dt);
    }
  });
});

https://jsfiddle.net/Lmxuyjs8/1/

非常感谢

【问题讨论】:

    标签: javascript jquery date


    【解决方案1】:

    另一种解决方案

    $(document).ready(function() {
    $.datepicker.setDefaults({
          dateFormat: 'dd-mm-yy',
       });
        $('#startdate').datepicker({
              onSelect: function(selectedDate) {
                    $('#enddate').datepicker('option', 'minDate', selectedDate );
              }
        });
        $('#enddate').datepicker({
              onSelect: function(selectedDate) {
                    $('#startdate').datepicker('option', 'maxDate', selectedDate );
              }
        });
    
    });
    

    Fork fiddle link

    【讨论】:

      【解决方案2】:

      我猜你必须使用
      dateFormat: 'dd-MM-yy'

      【讨论】:

      • 谢谢,但是如果我使用 MM 而不是 mm,那么它允许我设置一个小于“startdate”的“enddate”......这也不好。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-02-11
      • 1970-01-01
      • 2014-07-03
      • 1970-01-01
      • 1970-01-01
      • 2017-04-07
      • 1970-01-01
      相关资源
      最近更新 更多