在jQuery Mobile中有过滤的列表视图。将文本输入过滤器后,列表会被过滤,但按下GO按钮不会隐藏键盘。
用户希望按GO后键盘会隐藏。 有没有办法实现这个目标?
答案 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
}
});