我有一个非常简单的jQuery Datepicker日历:

$(document).ready(function(){
    $("#date_pretty").datepicker({ 
    });
});

当然在HTML中…

<input type="text" size="10" value="" id="date_pretty"/>

今天的日期是很好的突出显示为用户时,他们带来的日历,但我如何让jQuery预填充文本框本身与今天的日期在页面加载,而不需要用户做任何事情?99%的情况下,今天的日期默认是他们想要的。


当前回答

var myDate = new Date();
var prettyDate =(myDate.getMonth()+1) + '/' + myDate.getDate() + '/' +
        myDate.getFullYear();
$("#date_pretty").val(prettyDate);

似乎很管用,但也许还有更好的办法。

其他回答

试试这个

$(this).datepicker("destroy").datepicker({
            changeMonth: false, changeYear: false,defaultDate:new Date(), dateFormat: "dd-mm-yy",  showOn: "focus", yearRange: "-5:+10"
        }).focus();

用这个:

$ (" .datepicker”)。datepicker({dateFormat: 'dd-M-yy'})。datepicker('setDate', new Date());

以格式获取日期,例如:10-Oct-2019,这对用户来说更容易理解。

我只是想说几句。选择器用于添加/更新表单,因此如果编辑现有记录,则需要显示来自数据库的日期,如果没有则显示今天的日期。下面是为我工作良好:

    $( "#datepicker" ).datepicker();
    <?php if (!empty($oneEVENT['start_ts'])): ?>
       $( "#datepicker" ).datepicker( "setDate", "<?php echo $startDATE; ?>" );
    <? else: ?>
       $("#datepicker").datepicker('setDate', new Date());   
    <?php endif; ?>
  });

这段代码将确保使用你的datepicker的格式:

$('#date-selector').datepicker('setDate', new Date());

不需要重新应用格式,它使用预定义的datepicker -由你在datepicker初始化(如果你已经分配了它!);)

今天开始:

$('#date_pretty').datepicker('setDate', '+0');

设置为昨天:

$('#date_pretty').datepicker('setDate', '-1');

在今天日期之前或之后的任何天数都可以如此。

查看jQuery UI›方法›setDate。