我使用的是bootstrap datepicker和一个高线图。
我希望在缩放图表时更新日期选择器日期。一旦该事件触发,我就会更新datepicker的值。值可以正常更新,但是当单击日历时,弹出日历上的日期仍然是旧日期。
这是我的datepicker:
<div class="input-append date pull-right" id="dpStartDate" data-date="@DateTime.Now.AddMonths(-1).ToString("dd/MM/yyyy")" data-date-format="dd/mm/yyyy">
<input class="span2" id="startDateText" size="16" type="text" value="@DateTime.Now.AddMonths(-1).ToString("dd/MM/yyyy")" readonly="">
<span class="add-on"><i class="icon-th"></i></span>
</div>
我已经尝试使用下面的代码来更新这些值:
$('#dpStartDate').attr('data-date', startDate);
$('#startDateText').attr('value', startDate);
它可以很好地更新日期,但不会设置日历。
我还尝试触发了onChange事件,它也会更新日期,但不会更新日历:
$('#dpStartDate').trigger('changeDate', startDate);
$('#dpStartDate').datepicker()
.on('show', function (ev) {
ev.stopPropagation();
})
.on('changeDate', function (ev, date) {
var startDate = new Date();
if (date != undefined) {
startDate = date;
$('#dpStartDate').attr('data-date', startDate);
$('#startDateText').attr('value', startDate);
}
else {
startDate = ev.date;
$('#dpStartDate').attr(startDate.getDate() + '/' + (startDate.getMonth() + 1) + '/' + startDate.getFullYear());
$('#startDateText').attr(startDate.getDate() + '/' + (startDate.getMonth() + 1) + '/' + startDate.getFullYear());
}
$('#dpStartDate').datepicker('hide');
ev.stopPropagation();
});
有没有人知道是否可以这样更新日历?
谢谢
发布于 2013-11-13 20:32:09
这对我很管用
$(".datepicker").datepicker("update", new Date());
发布于 2013-08-09 17:31:34
$("#datepicker").datepicker("setDate", new Date);
发布于 2016-06-07 13:12:31
试试这段代码,
$(".endDate").datepicker({
format: 'dd/mm/yyyy',
autoclose: true
}).datepicker("update", "10/10/2016");
这将更新日期并应用格式dd/mm/yyyy
。
https://stackoverflow.com/questions/11507508
复制相似问题