输入类型号在ipad上不起作用

Ram*_*mya 6 safari ipad ionic2

我在离子中创建输入,只接受数字.这适用于除safari和ipad之外的所有浏览器和设备.我不希望用户比其他numbers.I输入任何试图做的输入事件正则表达式验证,但不从字母打字停止用户.我尝试了keydown事件,但我没有得到keyDown事件的innerText.请帮忙

Syl*_*Ash 12

我知道这是一个老问题,但我碰巧遇到了同样的问题,我注意到最终对我有用的东西没有提供答案,所以我会为下一个人添加答案.

<input type="number" min="0" inputmode="numeric" pattern="[0-9]*" title="Non-negative integral number">
Run Code Online (Sandbox Code Playgroud)

如果您有兴趣,本网站将解释解决方案背后的原因.

它的要点是,pattern="[0-9]*"是什么触发的iOS显示数字键盘,而minnumeric在那里,以确保其他操作系统和浏览器仍然运行良好type="number"

  • 在iOS上,数字键盘仅显示0-9,并且特定的"模式"是唯一允许的模式.你不能添加"." 或","到正则表达式 - 结果是它显示常规全键盘并允许任何文本输入,甚至覆盖代码中的检查以防止这种情况.在Android上,数字小键盘包含"." 和","默认情况下,但只有小数有效. (2认同)