Bootstrap datetimepicker 输入键填写初始日期
Bootstrap datetimepicker enter key to fill initial date
Bootstrap 日期时间选择器,如下所示:http://eonasdan.github.io/bootstrap-datetimepicker/
特别是在第一次显示时,回车键应该隐藏小部件并将当前日期放入输入字段。这是我尝试过的一些东西:
有一个 dp.hide 事件没有向回调中注入线索。所以,你不知道它是怎么触发的。
$("#datePicker").on("dp.hide", function(e) {
// e.notSquat
});
只是不清楚日期时间选择器的哪个 DOM 元素实际上在内部接收回车键。绝对不是输入元素:
// handler never gets called. css selector is correct
$("#datePicker input").keypress(function(e) {
console.log(e.which);
});
我有点勇敢,跳进了 datetimepicker.js 本身的代码:
https://raw.githubusercontent.com/Eonasdan/bootstrap-datetimepicker/master/src/js/bootstrap-datetimepicker.js
有线索,例如第2588行,但我的天哪,一定有更简单的方法:
// line 2588
enter: function () {
this.hide();
}
感谢任何帮助。
想出来了,以防有人觉得这有帮助。我在初始化插件时覆盖了keyBinds.enter 属性。
$("#datePicker").datetimepicker({
keyBinds: {
enter: function(){
if(this.date() === null) {
this.date(moment()); // moment() is similar to new Date()
}
this.hide();
}
},
useCurrent: false
});
使用另一个库时遇到同样的问题 - uxsolutions/bootstrap-datepicker v1.8.0..
经过简短的调查,我发现回车键对我不起作用的原因是 forceParse
选项设置为 false
( 中未说明文档).
代码取自Datepicker.prototype.keydown:
switch (e.keyCode) {
case 13: // enter
if (!this.o.forceParse)
break;
}
Bootstrap 日期时间选择器,如下所示:http://eonasdan.github.io/bootstrap-datetimepicker/
特别是在第一次显示时,回车键应该隐藏小部件并将当前日期放入输入字段。这是我尝试过的一些东西:
有一个 dp.hide 事件没有向回调中注入线索。所以,你不知道它是怎么触发的。
$("#datePicker").on("dp.hide", function(e) {
// e.notSquat
});
只是不清楚日期时间选择器的哪个 DOM 元素实际上在内部接收回车键。绝对不是输入元素:
// handler never gets called. css selector is correct
$("#datePicker input").keypress(function(e) {
console.log(e.which);
});
我有点勇敢,跳进了 datetimepicker.js 本身的代码: https://raw.githubusercontent.com/Eonasdan/bootstrap-datetimepicker/master/src/js/bootstrap-datetimepicker.js
有线索,例如第2588行,但我的天哪,一定有更简单的方法:
// line 2588
enter: function () {
this.hide();
}
感谢任何帮助。
想出来了,以防有人觉得这有帮助。我在初始化插件时覆盖了keyBinds.enter 属性。
$("#datePicker").datetimepicker({
keyBinds: {
enter: function(){
if(this.date() === null) {
this.date(moment()); // moment() is similar to new Date()
}
this.hide();
}
},
useCurrent: false
});
使用另一个库时遇到同样的问题 - uxsolutions/bootstrap-datepicker v1.8.0..
经过简短的调查,我发现回车键对我不起作用的原因是 forceParse
选项设置为 false
( 中未说明文档).
代码取自Datepicker.prototype.keydown:
switch (e.keyCode) {
case 13: // enter
if (!this.o.forceParse)
break;
}