设备上用于密码字段的数字键盘

3

我知道这个问题已经被问过很多次,但是之前我看到的答案都没有适用于我目前测试的任何设备。Android、iOS和Windows设备(从平板电脑到移动设备)都没有实现数字键盘。

我正在尝试在网站上实现一个CV2字段,因此需要像密码字段一样显示项目。以下是我目前使用的完整输入字段。

<input type="password" pattern="[0-9]*" autocomplete="off" maxlength="3" class="fm-input--small" required spellcheck="false" name="cvvNumber" data-alt-name="the last 3 digits on the back of your card" placeholder="e.g. 412" id="cvvNumber" inputmode="numeric"/>

尽管有这么多不同的方法,但并没有出现数字键盘。在iOS 8.0.3设备和Android 4.1.2和4.4.0设备上进行了测试。

我曾考虑过将其更改为type = number,并强制以星号标记。然而,我找到的唯一解决方案是:

-webkit-text-security: disc;

很遗憾,我无法使用此方法,因为我需要在Windows设备上使用。之前,pattern=[0-9]*几个月前曾经起作用,但现在不行了。有人知道是否不再支持这个功能吗?

我也很担心。

inputmode="numeric"

由于它目前尚未正式成为HTML5的一部分,因此它不起作用,我认为它不会被包含在其中。

顺便说一下,我很乐意通过其他方式来解决这个问题,如果需要编写少量的jQuery代码,那可能是最好的方法。谢谢!

编辑:

这在iPhone iOS 6.1.3上可以工作。奇怪...


您是否尝试过在Android中使用numberPasswordandroid:inputType="numberPassword" - Neal Ahluvalia
在安卓中,你可以将 numberPassword 赋值给 EditTextinputType 标签。 - Anshul Tyagi
它在所有设备上都能正常工作。 - Chirag Savsani
2个回答

0
在IOS中,借助以下脚本,您可以打开数字键盘。
<input type="text" pattern="[0-9]*">

或者

<input type="number" />

还有针对Android的。

<input type="number" step="0.01">

触发数字键盘

希望这能帮到你。


正如您所看到的,我已经在输入框中设置了这些内容。它没有弹出数字键盘。我的输入表单是否存在语法错误导致无法弹出数字键盘? - KirisuteRanza
@KirisuteRanza,实际上我没有代码可以检查,但是我会给你一个方向,即注释掉你的<input >标签,并将其替换为<input type="number" />。然后检查一下是否能够得到数字键盘。 - Jatin Patel - JP
我无法将<input type="number" />这样做,因为我需要它像密码一样。 - KirisuteRanza
@KirisuteRanza,如果您想分配<input type="password" />,则允许输入数字和字符。如果您想要限制,则需要进行编程管理。 - Jatin Patel - JP
是的...那就是我的问题。我该怎么做?我需要将它设置为密码并强制数字键盘出现吗?还是我需要将其设置为tel/number并通过javascript或css隐藏字符? - KirisuteRanza
不回答秘密密码问题。 - SILENT

-2

This will help you make a number pad on ios

1:选择您的UITextfield 2:进入属性检查器 3:选择所需的“键盘类型”

use  screenshot as a reference 

请详细说明您的屏幕截图。仅仅说“这个有效…”并不是真正有帮助的。如果您解释您所展示的内容,我会投票支持您的答案。 - Jesper Rønn-Jensen
我希望我已经改变了你要求改变的内容 @JesperRønn-Jensen - vijeesh
1
我不从事任何应用程序开发。这是一个网站,所以对我没有帮助? - KirisuteRanza

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接