输入类型号码不能在ipad上工作
问题描述:
我在离子中创建输入,只接受数字。这适用于除safari和ipad之外的所有浏览器和设备。我不希望用户输入除数字以外的任何东西。我试图对输入事件进行正则表达式验证,但这并不能阻止用户输入字母。我尝试了keydown事件,但我没有得到keyDown事件的innerText。请帮助输入类型号码不能在ipad上工作
答
我知道这是一个老问题,但我碰巧有同样的问题,我注意到了到底是什么工作对我来说还没有被作为一个答案提供,所以我会为下一个人添加答案。
<input type="number" min="0" inputmode="numeric" pattern="[0-9]*" title="Non-negative integral number">
This site解释了解决方案背后的原因,以防万一您有兴趣。
它的要点是,pattern="[0-9]*"
是什么触发的iOS显示数字键盘,而min
和numeric
在那里,以确保其他操作系统和浏览器仍与type="number"
答
如果您可以请提供您输入的示例代码。 不过你可以试试这个也
<ion-item>
<ion-label color="primary">Inline Label</ion-label>
<ion-input placeholder="Text Input" type="number"></ion-input>
</ion-item>
您可以使用 “文本”, “密码”, “电子邮件”, “号码”, “搜索”, “电话”,或者“网址”。作为输入类型。对不起,如果我误解了你的问题。请尝试提供一个代码示例。谢谢:)
答
你可以试试这个
<ion-input type="tel" inputmode="numeric" pattern="[0-9]*"></ion-input>
这将迫使输入要在iOS上的数字模式和正则表达式只是为了确保它只会得到的数字。据我所知这不会与input="number"
,但这是一个旧的解决方案(这仍然适用于我)。所以你可以试试number
,如果不行的话,可以回到tel
。
希望这有助于:d