【问题标题】:Set today's date as default date in jQuery UI datepicker [duplicate]在jQuery UI datepicker中将今天的日期设置为默认日期[重复]
【发布时间】:2011-06-22 09:45:57
【问题描述】:

我只想将今天的日期设为使用 jQuery UI 的 datepicker 的输入中的默认值:

<input id="mydate" type="text" />

我尝试了以下代码,但没有成功:

var currentDate = new Date();  
$("#mydate").datepicker("setDate",currentDate);

【问题讨论】:

    标签: jquery jquery-ui jquery-ui-datepicker


    【解决方案1】:

    您需要与初始化调用分开调用 setDate。因此,要创建日期选择器并一次性设置日期:

    $("#mydate").datepicker().datepicker("setDate", new Date());
    

    我不知道为什么会这样。如果有人这样做,那将是有趣的信息。

    【讨论】:

      【解决方案2】:

      在调用 datepicker method 之前,您必须初始化 datepicker

      $("#mydate").datepicker().datepicker("setDate", new Date());
      //-initialization--^          ^-- method invokation
      <link href="https://code.jquery.com/ui/1.9.2/themes/base/jquery-ui.css" rel="stylesheet" />
      <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
      <script src="https://code.jquery.com/ui/1.9.2/jquery-ui.js"></script>
      <input type="text" id="mydate" />

      这是Working JSFiddle

      PS:这假设您在计算机中设置了正确的日期

      【讨论】:

      • 谢谢!您还可以添加到您的示例 datepicker("selectedDate", new Date());仅在 OP 打开日历时才选择日期。
      • @Revious 实际上,我找不到对这种方法的任何引用......还有defaultDate,但它不会在有问题的文本框中设置日期.. .
      【解决方案3】:

      很简单,你只需添加这个脚本,

      $("#mydate").datepicker({ dateFormat: "yy-mm-dd"}).datepicker("setDate", new Date());
      

      在这里,setDate 设置今天的日期和 dateFormat 定义您要设置或显示的格式。

      希望它的简单脚本能正常工作..

      【讨论】:

        【解决方案4】:
        $("#date").datepicker.regional[""].dateFormat = 'dd/mm/yy';
        $("#date").datepicker("setDate", new Date());
        

        永远为我工作

        【讨论】:

          【解决方案5】:

          这对我有用,首先你将 datepicker 绑定到文本框,然后在下一行设置(今天作为默认日期)它的日期

          $("#date").datepicker();
          
          $("#date").datepicker("setDate", new Date());
          

          【讨论】:

            【解决方案6】:

            注意:当您传递 setDate 时,您正在调用一个假定日期选择器已在该对象上初始化的方法。

            $(function() {    
               $('#date').datepicker();
               $('#date').datepicker('setDate', '04/23/2014');
            });
            

            测试:http://jsfiddle.net/wimarbueno/hQkec/1/

            【讨论】:

              【解决方案7】:

              在初始化中设置默认日期:

              $("#date").datepicker({
                  defaultDate: '01/26/2014'
              });
              

              【讨论】:

                【解决方案8】:

                这对我有用,并且还对其进行了本地化:

                $.datepicker.setDefaults( $.datepicker.regional[ "fr" ] );
                $(function() {
                   $( "#txtDespatchDate" ).datepicker( );
                   $( "#txtDespatchDate" ).datepicker( "option", "dateFormat", "dd/mm/yy" );
                   $('#txtDespatchDate').datepicker('setDate', new Date());
                });
                

                【讨论】:

                  【解决方案9】:

                  只需设置 minDate: 0

                  这是我的脚本:

                  $("#valid_from")
                     .datepicker({
                       minDate: 0,
                       defaultDate: "+1w",
                       changeMonth: true,
                       numberOfMonths: 3
                  })
                  

                  【讨论】:

                    【解决方案10】:

                    我尝试了很多方法,并提出了自己的解决方案,完全符合要求。

                    “mydate”是输入或日期选择器元素/控件的 ID。

                            $(document).ready(function () {
                    
                            var dateNewFormat, onlyDate, today = new Date();
                    
                            dateNewFormat = today.getFullYear() + '-' + (today.getMonth() + 1);
                    
                            onlyDate = today.getDate();
                    
                            if (onlyDate.toString().length == 2) {
                                dateNewFormat += '-' + onlyDate;
                            }
                            else {
                                dateNewFormat += '-0' + onlyDate;
                            }
                            $('#mydate').val(dateNewFormat);
                        });
                    

                    【讨论】:

                      【解决方案11】:

                      你还没有定义

                      $("#mydate").datepicker({});
                      

                      【讨论】:

                        【解决方案12】:

                        试试这个:

                        $('.datepicker').datepicker('update', new Date(year,month,day));
                        

                        【讨论】:

                          【解决方案13】:

                          试试这个:

                          $("#mydate").datepicker("setDate",'1d');
                          

                          【讨论】:

                          • 1d 应该是什么?
                          • 抱歉回复晚了,1d 表示today
                          猜你喜欢
                          • 2015-10-02
                          • 1970-01-01
                          • 1970-01-01
                          • 2014-01-12
                          • 2011-04-22
                          • 2021-01-07
                          • 1970-01-01
                          • 2014-05-01
                          • 1970-01-01
                          相关资源
                          最近更新 更多