我正在使用 bootstrap datepicker 和一个 line highchart。
我希望在缩放图表时更新日期选择器日期。一旦该事件触发,我将更新日期选择器的值。值更新正常,但单击日历时,弹出日历上的日期仍然是旧日期。
这是我的日期选择器:
<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();
});
有谁知道是否可以像这样更新日历?
谢谢