在我的安卓/phonegap应用程序上使用软"数字"键盘时遇到问题。
我的目标是:在 html5 页面上创建一个简单的表单(我将与 phonegap 一起使用),用户在其中使用 0-9 个字符输入一个数字。为此,我使用了类型 = number 的输入字段,这会在我的 android 手机上生成正确的软键盘。
不幸的是,我在尝试检测何时按下数字键盘上的回车键时感到非常沮丧。通常,按下时,键盘不会提交表单,而是消失。但是,如果我将输入的类型更改为"文本",则 Enter 键将按预期工作并提交表单。
如何使用数字键盘重现表单提交?
有关参考,请参阅:http://jsfiddle.net/Ua9yw/13/
工作输入提交行为:
<form> <input type="text"/> </form>
<form id="form1">
<input type="text"/>
<input type="submit"/>
</form>
不工作 输入按钮行为:
<form> <input type="number"/> </form>
<form id="form1">
<input type="number"/>
<input type="submit"/>
</form>
您可以通过在 JQuery 中使用以下绑定来检测键盘按下next
:
$('input').on('keydown', function(e){
if(e.which === 9) {
//your code here
}
});
next
按钮模拟键盘上的tab
按键事件,即键代码 9。不幸的是,keypress
和keyup
事件不会检测到下一个关键事件,因此您需要将其绑定在 keydown
上。