0

我正在使用 JQuery 时间选择器。在选择时间时,显示时间的下拉窗口必须关闭,但它不会。

<h:inputText id="selectTime" value="00:00" />

$('#selectTime').pickatime({
    format: 'HH:i',
    disable: [
        [0, 0]
    ]
})
$('#selectTime').on('change', function() {
    $(this).hide();
})

对于上述 on change 事件,输入文本被隐藏,但 Time Picker 下拉菜单不被隐藏。我了解,当我使用它时,它会隐藏文本框。但是在选择时间后关闭时间选择器的正确方法是什么。

4

2 回答 2

0

对于 jQuery 自定义组合框,我遇到了同样的问题,并修复如下:

$('#selectTime').pickatime({
   format: 'HH:i',
   disable: [ [0, 0] ]
})

$('#selectTime').on('change', function() {
   $(".ui-menu").css('display', 'none');
   //hide the menu according to your dropdown locator in css
})

同时,您还必须添加键盘输入方法以隐藏菜单,例如

$('#selectTime').keypress(function(event) {
   if (event.which == 13) {
     $(".ui-menu").css('display', 'none');
     //hide the menu according to your dropdown locator in css
   }
})
于 2016-08-04T16:44:44.777 回答
0

也许您的输入元素属于标签元素。您必须使用容器将选取器根元素的事件分离为标签事件。

创建一个带有示例 id “root-picker-outlet”的空白 div:

<div id="root-picker-outlet"></div>

初始化选择器:

$('.timepicker').pickatime({
  container: '#root-picker-outlet'
})
于 2016-08-04T16:40:19.670 回答