【发布时间】:2014-09-11 00:34:35
【问题描述】:
好的,我已经阅读了很多关于此的内容,并且遇到了一些限制......所以就这样吧。
共识似乎是'tel' 输入是强制将输入过滤为移动设备上的数字输入的最简单/最佳方法。主要是因为它触发了数字小键盘。
我正在尝试使用 HTML5 中的 'tel' 输入字段来提示用户在表单中输入他们的数字 PIN 码以进行提交。这是输入代码:
<input type="tel" pattern="[0-9]" name="PIN" value="" maxlength="10" placeholder="Numeric PIN only" autofocus required />
有几点:
- 如何让键盘在页面加载时显示,以及
- 如何屏蔽
type="password"输入字段等值
当我点击输入时会显示键盘,但是我真的希望它(或任何其他键盘)在页面加载时弹出。
如果可能的话,我希望有一个“轻量级”/原生解决方案,因为我正在处理低带宽要求。
非常感谢。
【问题讨论】:
-
刚刚将问题标题中的 HTML 更改为 HTML5
-
“大家一致认为,‘tel’输入是在移动设备上强制将输入过滤为数字输入的最简单/最好的方法。” 真的吗?这似乎是一个非常糟糕的主意。为什么不...
type="number"? -
@T.J.Crowder 不幸的是,Apple 的文档表明了这一点。 See here.
-
@SandyChapman:从该页面:“要显示数字键盘,请将
pattern属性的值设置为"[0-9]*"或"\d*"。” 他们甚至举个例子:<input type="text" pattern="[0-9]*"></input>(虽然这个例子很糟糕,你永远不会关闭input这样的标签;在HTML中,你只需写<input type="text" pattern="[0-9]*">,在XHTML中你写<input type="text" pattern="[0-9]*"/>[后者是允许的,但毫无意义,在 HTML 中])。 -
这些很棒 - 谢谢@T.J.Crowder 这工作......有点。现在遇到跨平台问题 - android/chrome 似乎没有响应
[0-9]*或[\d*]模式并触发数字键盘。我现在已经解决了这个问题:<input type="password" pattern="\d*" name="PIN" value="" maxlength="10" title="Your PIN should be numbers only" placeholder="Numeric PIN only" autofocus required />
标签: android ios html forms input