jQueryMobile - 在列表视图中过滤并按下键盘上的Go不会隐藏键盘

时间:2012-08-10 09:18:23

标签: ipad jquery-mobile

在jQuery Mobile中有过滤的列表视图。将文本输入过滤器后,列表会被过滤,但按下GO按钮不会隐藏键盘。

用户希望按GO后键盘会隐藏。 有没有办法实现这个目标?

3 个答案:

答案 0 :(得分:1)

您必须使用Javascript手动从输入字段中删除焦点:

$('.ui-listview-filter .ui-input-text').live('keyup', function(event) {
    if (event.keyCode == 13) {
        // 'Go' pressed
        $('.ui-listview-filter .ui-input-text').trigger('blur');
    }
});

答案 1 :(得分:0)

按下该键后,您可能想尝试更改焦点。例如:

//this will un-select the text box, hiding keyboard
$('#searchInputId').blur();

//this will focus on something else, hiding keyboard
$('#somethingOtherThanTheSearch').focus();

答案 2 :(得分:0)

Pablo的答案的变体适用于我过时的jQuery版本(移动):

  // this is here to close the on-screen keyboards of mobile devices when the "go" button is used
  $("input[data-type='search']").on('keyup', function(event) {
    if (event.keyCode == 13) { // Enter or 'Go' pressed
      event.target.blur(); // remove focus on the search field so keyboard goes away
    }
 });