我的目标是让引导日期选择器https://atmospherejs.com/package/bootstrap3-datepicker在引导下拉列表中内联。我发现这是我想要做的最巧妙的用户体验。
在升级到 0.8 之前我让它工作得很好,但现在只要选择一个日期,下拉菜单就会隐藏。我不希望它隐藏,因为我在下拉菜单中有一个按钮来保存日期选择。除此之外,现在我无法在单击时将任何内容写入控制台。我已经尝试在我能想到的日期选择器的各个方面设置点击事件。如果您单击月份箭头或日期周围的某处,而不是日期本身,则会触发下面的“单击”测试。
任何帮助将不胜感激。我正在发展一种不健康的痴迷。
这就是我所拥有的工作。
HTML
<div class="btn-group form-control-static field no-print">
<div class="dropdown-toggle" data-toggle="dropdown" style="" title="Schedule New Call">
<a><i class="fa fa-calendar"></i> Schedule New Call</a>
</div>
<ul class="dropdown-menu">
<li class="picker-wrapper">
<div class="schedule-calls-day-picker"></div>
<input id="schedule-calls-day-holder" type="hidden" value="{{date}}">
<div class="schedule-calls-time-picker">
<div class="col-lg-3">
<i class="fa fa-clock-o fa-2x"></i>
</div>
<div class="col-lg-9">
<input type="text" class="form-control" id="schedule-calls-time-input" value='{{time}}'>
</div>
</div>
<div class="btn-group col-lg-12" style="margin-top:5px;">
<div class="btn btn-primary col-lg-12 set-schedule-calls">Schedule Call</div>
</div>
</li>
</ul>
</div>
模板事件
'click .picker-wrapper' : function (e) {
console.log('clicked');
e.stopPropagation();
}
Template.rendered
$('.schedule-calls-day-picker').datepicker()
.on('changeDate', function(e){
var tryDate = moment(e.date).format("YYYY-MM-DD")
$('#schedule-calls-day-holder').val(tryDate);
});