使输入类型=“密码”在具有 IE 的移动设备上使用数字键盘


Make Input Type=“Password” Use Number Pad on Mobile Devices with IE

我想更改密码输入以显示数字键盘(与type="number"相同)。

<input type="password" pattern="[0-9]*" inputmode="numeric">

但这不适用于 IE。是否可以使用其他方法执行此操作?

我删除了之前的答案,因为正如@IsmaelMiguel所说,它没有帮助。这是他在评论中建议的实现。如果有人想对此投赞成票,也请投赞成票。

在密码字段上覆盖透明的type=number字段。

<div style="position:relative;">
    <input id="mask" type="number" pattern="[0-9]*" inputmode="numeric" style="position:absolute;opacity:0;" />
    <input id="pin" type="password" />
</div>

jQuery用于将值从数字字段传递到密码字段

$(function(){
    $("#mask").on("keyup", function (e) {
        $("#pin").val($("#mask").val());
    });
});

我已经对此进行了测试,它可以在 Windows 11 上的 IE8.1 中运行。它唯一的问题是光标是不可见的,因为始终选择掩码。

演示