我使用自举数据采集器连同一行高图。
我希望当图表放大时,数据采集器的日期能够更新。一旦事件触发,我就更新数据采集器的值。值更新很好,但是当单击日历时,弹出日历上的日期仍然是旧日期。
这是我的数据采集器:
<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();
});
有人知道这样更新日历是否可行吗?
谢谢