【问题标题】:jQuery UI datepicker - How to use dateFormat for dates inside the code?jQuery UI datepicker - 如何在代码中使用 dateFormat 作为日期?
【发布时间】:2023-03-09 23:12:01
【问题描述】:

我想在我的日期选择器日历中处理一些日期,我只是不知道如何以我想要的日期格式编写日期。当我在我的代码中使用dateFormat 时,它不起作用。

我的答案可能就在这里,但我不知道在我的代码中在哪里使用它。 http://api.jqueryui.com/datepicker/#utility-formatDate

http://api.jqueryui.com/datepicker/#option-dateFormat

我的代码:

<script>
jQuery(function($) {
  $(document).ready(function(){
  var sesa1 = new Date(2019, 05, 04); // I want to write this dates in dd-mm-yy format
  var sesa2 = new Date(2019, 06, 06); // They curently work in yy-mm-dd format 
 $(".picker").datepicker({
//dateFormat: 'dd-mm-yy' , // If I uncoment this line the defaultDate will go in year 2024!
    defaultDate: '05/07/2019', // It works in format mm-dd-yy and I want it to be in dd-mm-yy
        beforeShowDay: function (date) {
            var day = date.getDay();
            if (date >= sesa1 && date <= sesa2) {
                return [(day != 0 && day != 1 ) ? true : false, 'green', 'some text'];
            }
            return [true, "", "sometext"]; 
        }

  });
});

【问题讨论】:

    标签: javascript jquery jquery-ui datepicker


    【解决方案1】:

    默认日期

    如果该字段为空白,则设置在首次打开时突出显示的日期。通过 Date 对象或当前dateFormat 中的字符串指定实际日期,或从今天开始的天数(例如+7)或值和句点字符串('y' 表示年份,'m' 表示月,'w' 表示周,'d' 表示天,例如 '+1m +7d'),或 null 表示今天。

    由于您的默认日期没有以正确的格式显示,因此读取不正确。

    jQuery(function($) {
      $(function(){
        var sesa1 = new Date(2019, 05, 04);
        var sesa2 = new Date(2019, 06, 06); 
        $(".picker").datepicker({
          dateFormat: 'dd-mm-yy',
          defaultDate: '07-05-2019',
          beforeShowDay: function (date) {
            var day = date.getDay();
            if (date >= sesa1 && date <= sesa2) {
              return [(day != 0 && day != 1 ) ? true : false, 'green', 'some text'];
            }
            return [true, "", "sometext"]; 
          }
        });
      });
    });
    

    另外,如果您需要从字符串中生成Date,请尝试使用$.datepicker.parseDate()

    $.datepicker.parseDate(格式、值、选项)

    从指定格式的字符串值中提取日期。

    这样,如果您可以拥有不同格式的日期字符串,则无论如何都可以获得 Date 对象。要反转它,请使用$.datepicker.formatDate( format, date, options )

    希望对您有所帮助。

    【讨论】:

    • 感谢您的帮助,我想我明白 parseDate 会做什么,但问题是我是 javascript 新手,我不知道在哪里正确放置和编辑 $.datepicker.parseDate( format, value, options )在我的代码中。如果你能告诉我或指点我一些指南,我将不胜感激,因为目前我所有使用它的尝试都失败了。
    • 使用它将生成的日期对象分配给变量。
    猜你喜欢
    • 1970-01-01
    • 2010-10-18
    • 2014-04-19
    • 2014-02-13
    • 2010-11-02
    • 2019-11-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多