问题:
使用
<input id="my_tel" type="tel" onkeypress="alert(event);"/>
<input id="my_num" type="number" onkeypress="alert(event);" />
问题是在 android 中按 done 或 enter 或 go 键,没有任何反应。对于所有其他键,它工作正常。当我试图提醒正在触发什么事件时,我发现没有。按下 go/enter/done 按钮时键盘不会隐藏(这很可悲)。
但是使用
输入类型="文本"
问题不存在。
这是我尝试过的:
A. 使用 input type="text" 并且不允许用户输入除数字以外的任何内容。
这种方法的问题:用户总是看到默认的文本键盘,她/他必须从默认文本切换到数字键盘,这并不优雅并且因为我的项目中有很多这样的页面而关闭。
B. 使用了诸如“ touchstart ”和“ touchend ”之类的事件,但没有运气。
C. 输入框甚至没有失去对按键的关注,因此解决方案 html phonegap android : numeric soft keyboard has next 而不是 go button没有用。
可能的解决方案:
我们可以使用 SoftKeyBoard 插件(https://github.com/phonegap/phonegap-plugins/tree/master/Android/SoftKeyboard)。并希望这个问题由此得到解决。但是真的不能有更好的解决方案吗?
注意:在 iOS 应用程序中未观察到该问题,仅在 android 中观察到该问题。
另一个注意事项:即使按下退格键也不会触发 DOM 事件,但至少退格键正在完成它的工作。在我的情况下,done/go/enter 键似乎没有执行其默认行为。