【问题标题】:Make Input Type=“Password” Use Number Pad on Mobile Devices with IE使输入类型=“密码” 在带有 IE 的移动设备上使用数字键盘
【发布时间】:2015-01-12 09:59:24
【问题描述】:

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

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

但这不适用于 IE。是否可以用其他方法做到这一点?

【问题讨论】:

  • 所以您想限制用户密码中的字符范围,从而降低安全性?
  • 只是数字密码!!!可能很快就被黑了....
  • 伙计们,很多网站 - 包括银行网站 - 都使用密码,我不认为 OP 在这里不合理
  • 他没有说这是干什么用的。它可以是您想要屏蔽的任意数量的输入。当你对此一无所知时,不要再告诉他这是个坏主意。例如,某些网站的密码以他正在寻找的确切方式掩盖了我信用卡的安全号码(最后 3 个)。尝试提问或回答他。
  • 我需要的人将数字键盘显示为默认值,但不显示字母键盘。因为在识别过程中,我使用一些东西作为员工编号。所以我想先显示数字键盘并节省时间

标签: php jquery html


【解决方案1】:

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

在密码字段上覆盖一个透明的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 8.1 上的 IE11 中运行。唯一的问题是光标是不可见的,因为总是选择掩码。

Demo

【讨论】:

    猜你喜欢
    • 2020-07-02
    • 1970-01-01
    • 2016-10-05
    • 2015-05-24
    • 2019-04-23
    • 2015-07-05
    • 2020-10-29
    • 2021-11-13
    • 1970-01-01
    相关资源
    最近更新 更多