【问题标题】:bootstrap datepicker setDate format dd/mm/yyyy引导日期选择器 setDate 格式 dd/mm/yyyy
【发布时间】:2014-07-06 17:15:47
【问题描述】:

我必须在我的日期选择器中以 dd/mm/yyyy 格式设置日期。我正在尝试使用 Javascript 做的是:

  var year = 2014;
  var month = 5;
  var day = 10;

  var realDate = new Date(year, month - 1, day); // months are 0-based!

  $('#MainContent_txtDataConsegna').datepicker({ dateFormat: 'dd/mm/yyyy' }); // format to show
  $('#MainContent_txtDataConsegna').datepicker('setDate', realDate);

问题是我的日期选择器中的值始终采用 mm/dd/yyyy 格式。问题出在哪里??

这里定义datepicker和datepicker选项:

   <div class="input-group date">
       <asp:TextBox runat="server" ID="txtDataOrdine" class="form-control" onBlur="CalcolaTotaliTestata('txtDataOrdine')"></asp:TextBox>
       <span class="input-group-addon"><i class="glyphicon glyphicon-calendar"></i>/span>
    </div>

<script type="text/javascript">
   $('.input-group.date').datepicker({
       todayBtn: "linked",
       language: "it",
       autoclose: true,
       todayHighlight: true,
       dateFormat: 'dd/mm/yyyy' 
   });
</script>

【问题讨论】:

  • 我注意到当我们使用 jquery 时它的 dateFormat: 'dd/mm/yy',而对于纯 javascript 使用 format: 'dd/mm/yyyy'

标签: javascript jquery date datepicker bootstrap-datepicker


【解决方案1】:

改变

dateFormat: 'dd/mm/yyyy'

format: 'dd/mm/yyyy'

看来您只是误读了一些文档!

【讨论】:

  • 因为还有其他答案,对于我们中的一些人的作品格式:'dd/mm/yyyy' 和其他 dateFormat:'dd/mm/yy'。解决这个问题的最简单方法就是尝试支持哪个名称。
  • @Krystian 我也一样:dateFormat: 'dd/mm/yy'.
【解决方案2】:

更改为format: 'dd/mm/yyyy' 对我不起作用,将其更改为dateFormat: 'dd/mm/yyyy' 多次添加年份,对我来说最好的是,

dateFormat: 'dd/mm/yy'

【讨论】:

  • 我还必须使用 'dateFormat' 选项而不是 'format' 才能使其工作。我认为 v1.6.1 中一定有一个错误,因为当您从日历中进行选择时,我遇到了“dd/mm/yyyy”重复年份值的问题。将其切换为“dd/mm/yy”有效,但格式不正确,因为它显示四位数年份,而格式表明它应该只显示两位。
  • 对于 en-US 文化,m/dd/yy 工作正常,对于其他文化,dd/mm/yy 工作正常。
  • 这在 bootstrap-datepicker v1.7.1 中对我有用。好像是个bug,如果以后版本解决了请告诉我,谢谢。
【解决方案3】:

格式有点变化

格式:“DD/MM/YYYY”

【讨论】:

    【解决方案4】:

    当您使用数据选择器时会感到困惑,对于引导程序日期选择器,您必须使用以下代码:-

    $( ".datepicker" ).datepicker({
       format: 'yyyy-mm-dd'
    });
    

    对于 jquery datepicker,必须使用以下代码:-

    $( ".datepicker" ).datepicker({
           dateFormat: 'dd-mm-yy'
        });
    

    所以你必须知道你正在使用哪个日期选择器,这最终解决了你的问题,希望这对你有帮助。

    【讨论】:

    • 这在开发人员中很常见,所以在使用日期选择器后要小心。
    【解决方案5】:

    对我来说,这是 daterangepicker 工作的:

         $('#host1field').daterangepicker({
                       locale: {
                                format: 'DD/MM/YYYY'
                                }
                     });
    

    【讨论】:

    • 我认为这是最新的正确答案
    【解决方案6】:

    对于我来说,我遇到了同样的问题,我是这样解决的 改变了 格式:'dd/mm/yy' 到 dateFormat: 'dd/mm/yy'

    【讨论】:

      【解决方案7】:

      您可以将此代码用于引导日期选择器:

      HTML 代码:

      <p>Date: <input type="text" id="datepicker" class="datepicker"></p>
      

      Javascript:

      $( ".datepicker" ).datepicker({
         format: 'yyyy-mm-dd'
      });
      

      【讨论】:

        【解决方案8】:

        格式:“DD/MM/YYYY”应该可以解决您的问题。如果您需要有关可用格式的更多帮助,请访问此控件内部使用的http://momentjs.com/

        我遇到了一个问题,这个“格式”的东西在本地机器上运行良好,但是当我在服务器上部署应用程序时,日期没有被填充并且控件是空的。当我评论格式代码时,它开始工作,但后来我没有我需要的格式。我使用 web.config 中的全球化条目解决了这个问题。

        <system.web>
            <globalization
            requestEncoding="utf-8"
            responseEncoding="utf-8"
            culture="en-GB"
            uiCulture="en-GB" />    
        </system.web>
        

        这有助于确保本地和服务器环境具有相同的文化。

        【讨论】:

          【解决方案9】:

          这行代码对我有用

          $("#datepicker").datepicker("option", "dateFormat", "dd/mm/yy");
          

          您当然可以使用 .input-group.date 类更改 id #datepicker

          【讨论】:

            【解决方案10】:

            我在使用 jquery mobile 1.4.5 时遇到了一些问题。例如,它似乎只接受从“选项”传递的格式更改。使用“选项”的日历存在一些刷新问题。对于所有有相同问题的人,我可以建议以下代码:

            $( "#mydatepicker" ).datepicker( "option", "dateFormat", "dd/mm/yy" );
            $( "#mydatepicker" ).datepicker( "setDate", new Date());    
            $('.ui-datepicker-calendar').hide();
            

            【讨论】:

              【解决方案11】:

              “与 bootstrap 自己的插件一样,datepicker 提供了一个 data-api,可用于实例化 datepicker 而无需自定义 javascript...”

              Boostrap DatePicker Documentation

              也许你想在没有 DatePicker 实例的情况下设置格式,为此,你必须将属性 data-date-format="DateFormat" 添加到主 Div 标签,例如:

              <div class="input-group date" data-provide="datepicker" data-date-format="yyyy-mm-dd">
                  <div class="input-group-addon">
                      <span class="glyphicon glyphicon-th"></span>
                  </div>
              
                  <input type="text" name="YourName" id="YourId" class="YourClass">
              </div>
              

              【讨论】:

              • 这个对我有用,而以上都没有。谢谢@LuisEduardox
              【解决方案12】:

              试试这个

               format: 'DD/MM/YYYY hh:mm A'
              

              众所周知,JS 是区分大小写的。 所以这将显示

              2016 年 10 月 5 日上午 12:00

              你的情况是

              format: 'DD/MM/YYYY'
              

              显示:2016 年 10 月 5 日

              我的引导日期时间选择器基于 eonasdan bootstrap-datetimepicker

              【讨论】:

                【解决方案13】:

                与 bootstrap 自己的插件一样,datepicker 提供了一个 data-api,可用于实例化 datepicker 而无需自定义 javascript。 将此用于引导程序:

                <label>Date of Birth</label>
                <input name="userdob" data-provide="datepicker" placeholder="dd-mm-yyyy" date-autoclose="true" class="form-control courtdata" data-date-format="dd-mm-yyyy" required>
                

                【讨论】:

                  猜你喜欢
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 2016-01-02
                  • 1970-01-01
                  • 2023-03-04
                  • 1970-01-01
                  • 2021-07-14
                  • 2012-02-14
                  相关资源
                  最近更新 更多