当我在 emberjs 的车把模板中设置 {{input value=sDate type='date'}} 时,我在使用 Chrome 时得到了 html5 日期选择器。不幸的是,Firefox 不支持 html5 日期选择器。如何改为切换到 jqueryUI datepicker?
问问题
774 次
2 回答
0
最好的方法是创建自己的组件并调用element.datepicker();
组件的didInsertElement
钩子。
于 2013-11-13T19:46:40.173 回答
0
这是Bootstrap DatePicker[Ember.Component][1]
的实现:
注意:您应该能够setupDatePicker
轻松地调整该功能以使用 jqueryUI datepicker。
date_picker_component.js
Chipmunk.DatePickerComponent = Ember.Component.extend({
setupDatePicker: {
var self = this;
return this.$('.datepicker').datepicker({
separator: "-",
autoclose: true
}).on("changeDate", function(event) {
return self.set("value", self.format(event.date));
});
}.on('didInsertElement'),
formattedValue: {
var value = this.get('value');
if (value) {
return this.format(value);
}
}.property('value'),
format: function(value) {
return moment.utc(value).format("YYYY-MM-DD");
}
});
date-picker.handlebars
<div class="date datepicker" data-date-format="yyyy-mm-dd">
<input class="form-control" size="16" type="text" readonly {{bindAttr value="formattedValue" rel="rel"}}>
<span class="add-on"><i class="icon-th"></i></span>
</div>
用法:
{{date-picker value=sDate}}
于 2013-11-13T20:04:01.020 回答