我有一个非常简单的jQuery Datepicker日历:
$(document).ready(function(){
$("#date_pretty").datepicker({
});
});
当然还有HTML ...
<input type="text" size="10" value="" id="date_pretty"/>
当用户调出日历时,今天的日期很好地突出显示,但是如何让jQuery在今天的页面加载日期之前预先填充文本框本身,而无需用户做任何事情? 99%的时间,今天的日期默认值将是他们想要的。
答案 0 :(得分:553)
更新:有报道称Chrome浏览器不再有效。
这很简洁,完成了工作:
$(".date-pick").datepicker('setDate', new Date());
答案 1 :(得分:219)
您必须首先调用datepicker()&gt; 然后使用'setDate'来获取当前日期。
$(".date-pick").datepicker();
$(".date-pick").datepicker("setDate", new Date());
在你的datepicker初始化之后对你的setDate方法调用进行链接,如对此答案的评论中所述
$('.date-pick').datepicker({ /* optional option parameters... */ })
.datepicker("setDate", new Date());
不只需
$(".date-pick").datepicker("setDate", new Date());
注意 :描述了可接受的setDate参数here
答案 2 :(得分:71)
var myDate = new Date();
var prettyDate =(myDate.getMonth()+1) + '/' + myDate.getDate() + '/' +
myDate.getFullYear();
$("#date_pretty").val(prettyDate);
似乎有效,但可能有更好的方法......
答案 3 :(得分:57)
setDate()
方法设置日期并更新关联的控件。方法如下:
$("#datepicker1").datepicker({
dateFormat: "yy-mm-dd"
}).datepicker("setDate", "0");
如文档中所述,setDate()
愉快地接受JavaScript Date对象,数字或字符串:
新日期可以是Date对象或当前日期的字符串 格式(例如'01 / 26/2009'),从今天开始的几天(例如+7)或a 一串价值观和期间('y'表示年份,'m'表示月份,'w'表示 几周,'d'天,例如'+ 1m + 7d'),或null以清除所选 日期。
如果您想知道,在构造函数中设置defaultDate
属性不会更新关联的控件。
答案 4 :(得分:25)
今天设为 :
$('#date_pretty').datepicker('setDate', '+0');
昨天设为 :
$('#date_pretty').datepicker('setDate', '-1');
依据 之前 或 之后 今天的日期
答案 5 :(得分:9)
解决方案是:
$(document).ready(function(){
$("#date_pretty").datepicker({
});
var myDate = new Date();
var month = myDate.getMonth() + 1;
var prettyDate = month + '/' + myDate.getDate() + '/' + myDate.getFullYear();
$("#date_pretty").val(prettyDate);
});
谢谢ashghost!
答案 6 :(得分:7)
此代码将确保使用您的日期选择器格式:
$('#date-selector').datepicker('setDate', new Date());
无需重新应用格式,它会在datepicker初始化时使用datepicker预定义的一个(如果已经分配了它!);)
答案 7 :(得分:7)
这个对我有用。
$('#inputName')
.datepicker()
.datepicker('setDate', new Date());
答案 8 :(得分:5)
David K Egghead的代码完美无缺,谢谢!
$(".date-pick").datepicker();
$(".date-pick").datepicker("setDate", new Date());
我还设法修剪了一下它也有效:
$(".date-pick").datepicker().datepicker("setDate", new Date());
答案 9 :(得分:4)
$('input[name*="date"]').datepicker({
dateFormat: 'dd-mm-yy',
changeMonth: true,
changeYear: true,
beforeShow: function(input, instance) {
$(input).datepicker('setDate', new Date());
}
});
答案 10 :(得分:2)
要预先填充日期,首先必须初始化datepicker,然后传递setDate参数值。
for(User user: users) {
entityManager.merge(user);
entityManager.flush();
}
答案 11 :(得分:1)
为了在加载时将datepicker设置为某个默认时间(在我的情况下是当前日期),然后可以选择语法的另一个日期:
$(function() {
// initialize the datapicker
$("#date").datepicker();
// set the time
var currentDate = new Date();
$("#date").datepicker("setDate",currentDate);
// set the options for the button
$("#date").datepicker("option",{
dateFormat: 'dd/mm',
showOn: "button",
// whatever option Or event you want
});
});
答案 12 :(得分:1)
你有两个选择:
选项A)只有在您点击输入时,才会在日历中标记为“有效”。
<强>的js 强>:
$('input.datepicker').datepicker(
{
changeMonth: false,
changeYear: false,
beforeShow: function(input, instance) {
$(input).datepicker('setDate', new Date());
}
}
);
<强>的CSS 强>:
div.ui-datepicker table.ui-datepicker-calendar .ui-state-active,
div.ui-datepicker table.ui-datepicker-calendar .ui-widget-content .ui-state-active {
background: #1ABC9C;
border-radius: 50%;
color: #fff;
cursor: pointer;
display: inline-block;
width: 24px; height: 24px;
}
选项B)默认情况下输入今天。 你必须首先填充datepicker。
$("input.datepicker").datepicker().datepicker("setDate", new Date());
答案 13 :(得分:1)
以为我会加两分钱。选择器正在添加/更新表单中使用,因此如果编辑现有记录,则需要显示来自数据库的日期,否则显示今天的日期。以下对我来说很好:
$( "#datepicker" ).datepicker();
<?php if (!empty($oneEVENT['start_ts'])): ?>
$( "#datepicker" ).datepicker( "setDate", "<?php echo $startDATE; ?>" );
<? else: ?>
$("#datepicker").datepicker('setDate', new Date());
<?php endif; ?>
});
答案 14 :(得分:0)
试试这个
$(this).datepicker("destroy").datepicker({
changeMonth: false, changeYear: false,defaultDate:new Date(), dateFormat: "dd-mm-yy", showOn: "focus", yearRange: "-5:+10"
}).focus();
答案 15 :(得分:0)
var prettyDate = $.datepicker.formatDate('dd-M-yy', new Date());
alert(prettyDate);
将prettyDate指定为必要的控件。
答案 16 :(得分:0)
这对我来说效果更好,因为有时我会遇到麻烦.datepicker('setDate', new Date());
,因为如果我已经使用参数配置了日期选择器,它就会混乱。
$("#myDateText").val(moment(new Date()).format('DD/MM/YYYY'));
答案 17 :(得分:0)
使用此:
$(".datepicker").datepicker({ dateFormat: 'dd-M-yy' }).datepicker('setDate', new Date());
以日期格式获取日期:例如:2019年10月10日,这对于用户来说将更容易理解。
答案 18 :(得分:-1)
$(function()
{
$('.date-pick').datePicker().val(new Date().asString()).trigger('change');
});
来源:http://www.kelvinluck.com/assets/jquery/datePicker/v2/demo/datePickerDefaultToday.html