我想在用户获取表单上的某个输入时显示日期选择器。如果用户只是选中该字段,则应显示日期选择器。
我试过这样的事情(我顺便使用Zebra_DatePicker):
var datepicker = $('#date-picker-input').data('Zebra_DatePicker')
$('#date-picker-input').focus(function(){
datepicker.show()
})
可行 - 在字段中显示日期选择器。但是,如果用户决定点击相关的输入字段,这会破坏功能;当发生这种情况时,点击最初打开日期选择器,然后焦点回调函数关闭它。结果是瞬间闪烁,其中显示的是日期选择器然后立即关闭。
如何获得答题器和标签的功能?
答案 0 :(得分:0)
问题是data('Zebra_DatePicker')
返回对日期选择器组件的引用而不是对元素本身的引用,因此对错误的对象执行focus
事件绑定。
试试这个:
$('#date-picker-input').on('focus click', function(e) {
e.stopImmediatePropagation();
$(this).data('Zebra_DatePicker').show();
})
答案 1 :(得分:0)
该插件不支持您所要求的内容,也不提供许多挂钩,因此解决方法会有点笨拙..
如果您在页面中使用单个日期选择器,请执行
初始化插件
$('#date-picker-input').Zebra_DatePicker({
// what options you already use
// and then add
onSelect: function () {
var datepicker = $(this).data('Zebra_DatePicker');
setTimeout(function () {
datepicker.hide();
}, 1);
}
});
然后添加
$('#date-picker-input').off('click').on('focus', function(){
var datepicker = $(this).data('Zebra_DatePicker');
datepicker.show();
return false;
});