[英]Set initial value in datepicker with jquery?
我正在尝试在我的jquery ui datepicker中设置初始值。 我尝试了几种不同的方式,但似乎没有任何东西显示日期,它是空的。
var idag = new Date();
$("#txtFrom").datepicker("setDate", idag - 2);
$("#txtTom").datepicker("setDate", idag);
$("#txtFrom").datepicker("refresh");
$("#txtTom").datepicker("refresh");
这个简单的例子对我有用......
HTML
<input type="text" id="datepicker">
JavaScript的
var $datepicker = $('#datepicker');
$datepicker.datepicker();
$datepicker.datepicker('setDate', new Date());
我能够通过简单地查看@手册并阅读setDate
的解释来创建它:
.datepicker(“setDate”,date)
设置datepicker的当前日期。 新日期可以是Date对象或当前日期格式的字符串(例如'01 / 26/2009'),从今天开始的天数(例如+7)或一串值和句点('y'代表年,'m'持续数月,'w'持续数周,'d'持续数天,例如'+ 1m + 7d'),或为空以清除所选日期。
您可以在HTML中设置值,然后在init datepicker中设置该值以启动/突出显示实际日期
<input name="datefrom" type="text" class="datepicker" value="20-1-2011">
<input name="dateto" type="text" class="datepicker" value="01-01-2012">
<input name="dateto2" type="text" class="datepicker" >
$(".datepicker").each(function() {
$(this).datepicker('setDate', $(this).val());
});
以上甚至适用于丹麦日期格式
来自jQuery :
如果该字段为空,请在第一次打开时设置要突出显示的日期。 通过Date对象指定实际日期,或者指定当前dateFormat中的字符串,或者从今天开始的天数(例如+7)或一串值和句点('y'表示年份,'m'表示月份, 'w'持续数周,'d'持续数天,例如'+ 1m + 7d'),或今天为null。
代码示例
使用指定的defaultDate选项初始化一个datepicker。
$(".selector").datepicker({ defaultDate: +7 });
在init之后获取或设置defaultDate选项。
//getter
var defaultDate = $(".selector").datepicker("option", "defaultDate");
//setter
$(".selector").datepicker("option", "defaultDate", +7);
在初始化datepicker之后,您还应该能够使用以下内容设置日期:
$(/*selector*/).datepicker("setDate" , date)
使用此代码它会对您有所帮助。
<script>
InitializeDate();
</script>
<input type="text" id="txtFromDate" class="datepicker calendar-icon" placeholder="From Date" style="width: 100px; margin-right: 10px; padding: 0px 0px 0px 7px;">
<input type="text" id="txtToDate" class="datepicker calendar-icon" placeholder="To Date" style="width: 100px; margin-right: 10px; padding: 0px 0px 0px 7px;">
function InitializeDate() {
var date = new Date();
var dd = date.getDate();
var mm = date.getMonth() + 1;
var yyyy = date.getFullYear();
var ToDate = mm + '/' + dd + '/' + yyyy;
var FromDate = mm + '/01/' + yyyy;
$('#txtToDate').datepicker('setDate', ToDate);
$('#txtFromDate').datepicker('setDate', FromDate);
}
使用setDate
.datepicker( "setDate" , date )
设置datepicker的当前日期。 新日期可以是Date对象或当前日期格式的字符串(例如'01 / 26/2009'),从今天开始的天数(例如+7)或一串值和句点('y'代表年,'m'持续数月,'w'持续数周,'d'持续数天,例如'+ 1m + 7d'),或为空以清除所选日期。
我不完全确定我是否理解了您的问题,但似乎您正在尝试为输入类型Date设置值。
如果要为输入类型 “ 日期 ”设置值,则必须将其格式化为“ yyyy-MM-dd ”(注意:大写MM表示月份,小写字母表示mm表示分钟)。 否则,它将清除该值并将datepicker保留为空。
假设您有一个名为“ DateChanger ”的按钮,并且您希望在单击它时将日期选择器设置为“ 2012年12月22日 ”。
<script>
$(document).ready(function () {
$('#DateChanger').click(function() {
$('#dtFrom').val("2012-12-22");
});
});
</script>
<input type="date" id="dtFrom" name="dtFrom" />
<button id="DateChanger">Click</button>
请记住包含JQuery引用。
在初始化代码之后使用它来获取当前日期(以datepicker格式):
$(".ui-datepicker-today").trigger("click");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.