我使用的是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());发布于 2012-11-15 22:59:24
var startDate = new Date();
$('#dpStartDate').data({date: startDate}).datepicker('update').children("input").val(startDate);另一种方式
$('#dpStartDate').data({date: '2012-08-08'});
$('#dpStartDate').datepicker('update');
$('#dpStartDate').datepicker().children('input').val('2012-08-08');日期选择器在属性data-date
这样,您可以将日期设置为'2012-08-08‘
发布于 2013-08-09 17:31:34
$("#datepicker").datepicker("setDate", new Date);https://stackoverflow.com/questions/11507508
复制相似问题