代码之家  ›  专栏  ›  技术社区  ›  Alex Zakruzhetskyi

初始化时的日期选取器格式

  •  0
  • Alex Zakruzhetskyi  · 技术社区  · 6 年前

    date . 编辑此表时,输入值的格式如下: yy-mm-dd . 在我的js文件中,我初始化了datepicker:

    $('#date-input').datepicker({
                numberOfMonths: 1,
                isRTL : $('body').hasClass('rtl') ? true : false,
                prevText: '<i class="fa fa-angle-left"></i>',
                nextText: '<i class="fa fa-angle-right"></i>',
                showButtonPanel: false,
                dateFormat: 'dd-mm-yy'
            });
    

    如您所见,我指定了格式: dateFormat: 'dd-mm-yy' 01-09-2018 ,但不是 2018-09-01 ? 谢谢。

    1 回复  |  直到 6 年前
        1
  •  1
  •   arieljuod    6 年前

    您必须在编辑模板上设置正确的格式。假设您对一个对象使用窗体\:

    f.text_field :some_date, @object.some_date.to_formatted_s('dd-mm-yy')
    

    那么初始日期将是一个可以被datepicker的format config理解的日期。

    f.text_field :some_date, l(@object.some_date, format: :input)
    # `l` method is a shortcut for I18n.l, a shortcut for I18n.localize
    

    然后在你的电脑上有一个日期格式基督教青年会(我猜你不是在开发这种格式的英语应用程序):

    es:
      date:
        formats:
          input: 'dd-mm-yy'
    

    这样,您就可以在一个地方更改格式,甚至可以接受不同的语言(您可以使用本地化格式,而不是在脚本上硬编码格式)。