当我选择日期时,datepicker会重新打开,因为我添加了$(this).focus();在onSelect。我该如何解决这个问题? (Example)
$('#datepicker').datepicker({
onSelect : function(x, u){
$(this).focus();
}
});
我希望重点关注。我不能删除那个焦点。请不要删除那个焦点,请告诉我一些解决方法。
答案 0 :(得分:-1)
请注意,在jquery ui datepicker选择之后,在焦点返回到输入字段之前模糊和更改事件会激活,IE上的焦点事件总是存在问题。
修复程序如下所示
//Example using triggerHandler
$(function () {
"use strict";
$('#datepicker').datepicker({
onSelect : function(x, u){
format: "dd/mm/yyyy"
},
onClose: function(dateText) {
$(this).triggerHandler("focus");
$(this).triggerHandler("blur");
}
});
});
这项工作对我来说, 参考
//使用triggerHandler的示例 http://jsfiddle.net/shaikhimran786/w6fvuL18/
使用triggerHandler解决问题。
triggerHandler()方法触发所选元素的指定事件。
此方法类似于trigger()方法,但trigger()也会触发事件的默认行为(如表单提交)。
另一个解决方案是
//Example using hide datepicker
$(function () {
"use strict";
$('#datepicker').datepicker({
onSelect : function(x, u){
format: "dd/mm/yyyy"
}
});
$('.dp').on('change', function () {
$('.datepicker').hide();
});
});
请参阅以下链接
//使用hide datepicker的示例 http://jsfiddle.net/shaikhimran786/xj9tkvtd/
希望此修复程序可以帮助您解决问题。