Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了如何在Android中显示密码字段的数字软键盘大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用PhoneGap进行 Android移动项目,并使用三星Galaxy S2 Skyrocket,Android版本4.0.4进行测试.现在我有一个只接受数字密码的html输入字段,所以首先我设置这样的输入
< input type =“password”id =“password”/>
它给了我Android中的字母键盘,但我希望显示键盘是数字.
所以我改变了我的代码
< input type =“tel”id =“密码”/>并使用CSS来掩盖密码

<style type="text/css">
        #password {
            -webkit-text-security: disc;
        }
</style>

但是屏蔽与type =“password”的工作方式不同,它会在密码框没有聚焦时屏蔽密码.如果它被聚焦,密码将不会被光盘屏蔽,因此它将显示.

有没有办法让我显示数字键盘并让密码一直被屏蔽

谢谢.

解决方法

解决了这个问题

密码输入标签在这样的div中

<div id="passwordCell" style="display:inline;">
    <input type="password" pattern="[0-9]*" name="password" id="password" placeholder="4 digit numeric only allowed" maxlength="4"/>
</div>

所以我通过以下步骤解决了问题:

>在#passwordCell div中添加一个输入字段,并为其指定一个id,例如password_mask
< input type =“tel”name =“password_mask”id =“password_mask”placeholder =“仅允许4位数字.” MAXLENGTH = “4”/>
>隐藏#password输入字段
$( “#密码”),隐藏().
>将jQuery keyup事件绑定到#password_mask输入字段,使其将其输入值传递给#password字段,并将#password_mask中的输入字符替换为*.我这样做是因为最后#password中的值将作为用户密码发送到服务器

这是javascript代码,我使用jQuery

$("#passwordCell").html('');
$("#passwordCell").append('<input type="tel" name="password_mask" id="password_mask" placeholder="4 digit numeric only allowed." maxlength="4"/>' +
                            '<input type="password" pattern="[0-9]*" name="password" id="password" placeholder="4 digit numeric only allowed" maxlength="4" data-validation-required="true" data-validation-pattern="pin not_empty"/>');
$("#password_mask").textinput();
$("#password").textinput();
//$("#password_mask").show();
$("#password").hide();
$("#password_mask").keyup(function() {
    var inputLength = $(this).val().length;
    var passwordLength = $("#password").val().length;
    if (inputLength > passwordLength) {
        var inputLastChar = $(this).val().charAt(inputLength-1);
        $("#password").val($("#password").val() + inputLastChar);
    } else {
        $("#password").val($("#password").val().subString(0,$(this).val().length));
    }

    var i = 0;
    var maskpassword = "";
    while (i < $("#password_mask").val().length) {
        maskpassword += "*";
        i++;
    }
    $("#password_mask").val(maskpassword);
});
$("#password_mask").blur(function() {
    $("#password").focus();
    $("#password").blur();
});

大佬总结

以上是大佬教程为你收集整理的如何在Android中显示密码字段的数字软键盘全部内容,希望文章能够帮你解决如何在Android中显示密码字段的数字软键盘所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。