关于xcode:PhoneGap IOS键盘完成按键事件

PhoneGap IOS Keyboard Done Key Event

我正在PhoneGap IOS应用程序中使用JQuery Mobile。我目前正在按照以下搜索键成功捕获IOS键盘返回值。

1
2
3
4
5
6
7
8
9
JS
function blah()
{
if(window.event.keyCode == 13   )
{ do something }
}

HTML
<input type="search" id="searchBox" value="" onblur="dothis()" data-inline="true"    onKeyPress="blah();" />

我也想在键盘上捕捉'Done'键。我似乎找不到任何有关此的信息。

谢谢。


我建议在原始答案中使用blur事件。但是,我认为一个更好的主意是监听键盘的隐藏状态-这将在按下"完成"按钮之后发生。

1
2
3
window.addEventListener('keyboardDidHide', function () {
  // Describe your logic which will be run each time keyboard is closed.
});

https://github.com/cjpearson/cordova-plugin-keyboard#keyboarddidhide

此外,请确保在完成隐藏键盘后的所有操作之后注销此侦听器。否则,每当键盘隐藏在应用程序的其他部分时,它将触发。


不幸的是,按"完成"键不会触发keyCode事件。因此,我似乎也找不到任何方法来检测它。

我认为唯一的选择是检测您的字段中的"模糊"事件。如果发生该事件,请执行您需要执行的任何操作。当然,这仅在您具有单个字段的情况下才有用。如果您有多个字段,则将" blur"等同于" Go"或" Submit"是没有用的。

让我们知道您是否找到了更好的解决方法。